summaryrefslogtreecommitdiff
path: root/test/parser_test.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/parser_test.c')
-rw-r--r--test/parser_test.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/test/parser_test.c b/test/parser_test.c
index 8565dc8..78e2e23 100644
--- a/test/parser_test.c
+++ b/test/parser_test.c
@@ -64,17 +64,15 @@ test_parse_function(const MunitParameter params[], void *user_data_or_fixture)
lexer_t lexer;
scope_t *scope = scope_new();
- make_lexer_from_static_src(&lexer, "fn main(): i32 { \nreturn 42;\n }");
+ make_lexer_from_static_src(&lexer, "fn add(): i32 { return 2; } fn main(): i32 { \nreturn 42;\n }");
parser_init(&parser, &lexer, scope);
- ast_node_t *ast_function = parser_parse_function_declaration(&parser);
+ ast_node_t *ast_ns = parser_parse_ns(&parser);
- assert_not_null(ast_function);
+ assert_not_null(ast_ns);
- char actual[5];
+ ast_node_t *ast_function = ast_node_ns_get_function_node_by_name(ast_ns, "main");
- string_view_to_str(&ast_function->data.function.identifier.name, actual);
- assert_string_equal("main", actual);
- assert_int(AST_FUNCTION_DECLARATION, ==, ast_function->kind);
+ assert_not_null(ast_function);
ast_node_t *ast_return = vector_at(ast_function->data.function.body->data.block.body, 0);