diff options
Diffstat (limited to 'js/scripting-lang/tests/18_each_combinator_minimal.txt')
-rw-r--r-- | js/scripting-lang/tests/18_each_combinator_minimal.txt | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/js/scripting-lang/tests/18_each_combinator_minimal.txt b/js/scripting-lang/tests/18_each_combinator_minimal.txt new file mode 100644 index 0000000..0da9320 --- /dev/null +++ b/js/scripting-lang/tests/18_each_combinator_minimal.txt @@ -0,0 +1,61 @@ +/* Minimal Unit Test: Each Combinator */ + +/* Test data */ +numbers : {1, 2, 3, 4, 5}; +table1 : {a: 1, b: 2, c: 3}; +table2 : {a: 10, b: 20, c: 30}; + +/* each with table and scalar */ +each_add : each @add numbers 10; +each_1 : each_add[1]; +each_2 : each_add[2]; +each_3 : each_add[3]; +..assert each_1 = 11; +..assert each_2 = 12; +..assert each_3 = 13; + +/* each with two tables */ +each_sum : each @add table1 table2; +..assert each_sum.a = 11; +..assert each_sum.b = 22; +..assert each_sum.c = 33; + +/* each with scalar and table */ +each_add_scalar : each @add 10 numbers; +scalar_1 : each_add_scalar[1]; +scalar_2 : each_add_scalar[2]; +scalar_3 : each_add_scalar[3]; +..assert scalar_1 = 11; +..assert scalar_2 = 12; +..assert scalar_3 = 13; + +/* each with partial application */ +add_to_ten : each @add 10; +partial_result : add_to_ten numbers; +partial_1 : partial_result[1]; +partial_2 : partial_result[2]; +partial_3 : partial_result[3]; +..assert partial_1 = 11; +..assert partial_2 = 12; +..assert partial_3 = 13; + +/* each with different operations */ +each_multiply : each @multiply numbers 2; +mult_1 : each_multiply[1]; +mult_2 : each_multiply[2]; +mult_3 : each_multiply[3]; +..assert mult_1 = 2; +..assert mult_2 = 4; +..assert mult_3 = 6; + +/* each with empty table */ +empty_table : {}; +empty_result : each @add empty_table 10; +..assert empty_result = {}; + +/* each with single element table */ +single_table : {key: 5}; +single_result : each @add single_table 10; +..assert single_result.key = 15; + +..out "Minimal each combinator test completed successfully"; \ No newline at end of file |