Skip to content
Snippets Groups Projects
Commit f96425ff authored by Stéphane Del Pino's avatar Stéphane Del Pino
Browse files

Add missing tests for ASTNodeDataTypeBuilder

parent 98ae9999
No related branches found
No related tags found
1 merge request!104Add missing tests for ASTNodeBuiltinFunctionExpressionBuilder
......@@ -1002,6 +1002,21 @@ let cat : string*N -> string, (s,n) -> s+n;
CHECK_AST(data, result);
}
SECTION("builtin-functions")
{
std::string_view data = R"(
let foo : builtin_t*N -> builtin_t, (b,n) -> b;
)";
std::string_view result = R"(
(root:void)
`-(language::fct_declaration:void)
`-(language::name:foo:function)
)";
CHECK_AST_WITH_BUILTIN(data, result);
}
SECTION("errors")
{
SECTION("wrong parameter number")
......@@ -1312,6 +1327,35 @@ let s : string, s = cat("foo", "bar");
CHECK_AST(data, result);
}
SECTION("bultin_t-function")
{
std::string_view data = R"(
let foo : builtin_t*N -> builtin_t, (b,n) -> b;
let b0: builtin_t;
let b : builtin_t, b = foo(b0, 1);
)";
std::string_view result = R"(
(root:void)
+-(language::fct_declaration:void)
| `-(language::name:foo:function)
+-(language::var_declaration:void)
| +-(language::name:b0:builtin_t)
| `-(language::type_name_id:builtin_t)
`-(language::var_declaration:void)
+-(language::name:b:builtin_t)
+-(language::type_name_id:builtin_t)
+-(language::name:b:builtin_t)
`-(language::function_evaluation:builtin_t)
+-(language::name:foo:function)
`-(language::function_argument_list:builtin_t*Z)
+-(language::name:b0:builtin_t)
`-(language::integer:1:Z)
)";
CHECK_AST_WITH_BUILTIN(data, result);
}
SECTION("compound return function")
{
std::string_view data = R"(
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment