diff options
Diffstat (limited to 'js/scripting-lang/baba-yaga-c/test_new.txt')
-rw-r--r-- | js/scripting-lang/baba-yaga-c/test_new.txt | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/js/scripting-lang/baba-yaga-c/test_new.txt b/js/scripting-lang/baba-yaga-c/test_new.txt deleted file mode 100644 index a67bf59..0000000 --- a/js/scripting-lang/baba-yaga-c/test_new.txt +++ /dev/null @@ -1,64 +0,0 @@ -/* Integration Test: Pattern Matching */ -/* Combines: case expressions, functions, recursion, complex patterns */ - -..out "=== Integration Test: Pattern Matching ==="; - -/* Recursive factorial with case expressions */ -factorial : n -> - when n is - 0 then 1 - _ then n * (factorial (n - 1)); - -/* Pattern matching with multiple parameters */ -classify : x y -> - when x y is - 0 0 then "both zero" - 0 _ then "x is zero" - _ 0 then "y is zero" - _ _ then when x is - 0 then "x is zero (nested)" - _ then when y is - 0 then "y is zero (nested)" - _ then "neither zero"; - -/* Test factorial */ -fact5 : factorial 5; -fact3 : factorial 3; - -..assert fact5 = 120; -..assert fact3 = 6; - -/* Test classification */ -test1 : classify 0 0; -test2 : classify 0 5; -test3 : classify 5 0; -test4 : classify 5 5; - -..assert test1 = "both zero"; -..assert test2 = "x is zero"; -..assert test3 = "y is zero"; -..assert test4 = "neither zero"; - -/* Complex nested case expressions */ -analyze : x y z -> - when x y z is - 0 0 0 then "all zero" - 0 0 _ then "x and y zero" - 0 _ 0 then "x and z zero" - _ 0 0 then "y and z zero" - 0 _ _ then "only x zero" - _ 0 _ then "only y zero" - _ _ 0 then "only z zero" - _ _ _ then "none zero"; - -result1 : analyze 0 0 0; -result2 : analyze 0 1 1; -result3 : analyze 1 0 1; -result4 : analyze 1 1 1; - -..assert result1 = "all zero"; -..assert result2 = "only x zero"; -..assert result3 = "only y zero"; -..assert result4 = "none zero"; - -..out "Pattern matching integration test completed"; \ No newline at end of file |