Add 'list' and 'print' builtins
This commit is contained in:
@@ -21,6 +21,7 @@ void setUp(void) {
|
||||
ucl_state_put(state, "let", ucl_builtin_create(ucl_builtin_let));
|
||||
ucl_state_put(state, "+", ucl_builtin_create(ucl_builtin_add));
|
||||
ucl_state_put(state, "error", ucl_builtin_create(ucl_builtin_error));
|
||||
ucl_state_put(state, "list", ucl_builtin_create(ucl_builtin_list));
|
||||
}
|
||||
|
||||
void tearDown(void) {
|
||||
@@ -108,6 +109,18 @@ static void test_eval_nested_error(void) {
|
||||
TEST_ASSERT_OBJ_ERROR(response);
|
||||
}
|
||||
|
||||
static void test_eval_list(void) {
|
||||
response = eval("(list 1 2 3)");
|
||||
TEST_ASSERT_OBJ_LIST(response);
|
||||
TEST_ASSERT_EQUAL(ucl_list_length(response)->integer, 3);
|
||||
|
||||
int i = 1;
|
||||
FOREACH_LIST(response, iter, item) {
|
||||
TEST_ASSERT_EQUAL(item->integer, i);
|
||||
i++;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
int main(void) {
|
||||
UNITY_BEGIN();
|
||||
@@ -124,6 +137,7 @@ int main(void) {
|
||||
RUN_TEST(test_eval_sym_defined);
|
||||
RUN_TEST(test_eval_sym_undefined);
|
||||
RUN_TEST(test_eval_nested_error);
|
||||
RUN_TEST(test_eval_list);
|
||||
|
||||
return UNITY_END();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user