diff options
Diffstat (limited to 'js/scripting-lang/baba-yaga-c/tests/21_enhanced_case_statements.txt')
-rw-r--r-- | js/scripting-lang/baba-yaga-c/tests/21_enhanced_case_statements.txt | 98 |
1 files changed, 0 insertions, 98 deletions
diff --git a/js/scripting-lang/baba-yaga-c/tests/21_enhanced_case_statements.txt b/js/scripting-lang/baba-yaga-c/tests/21_enhanced_case_statements.txt deleted file mode 100644 index 79adb69..0000000 --- a/js/scripting-lang/baba-yaga-c/tests/21_enhanced_case_statements.txt +++ /dev/null @@ -1,98 +0,0 @@ -/* Unit Test: Enhanced Case Statements - Fixed Version */ -/* Tests: FizzBuzz and advanced pattern matching with new capabilities */ - -/* ===== FIZZBUZZ IMPLEMENTATION ===== */ - -/* Classic FizzBuzz using multi-value patterns with expressions */ -fizzbuzz : n -> - when (n % 3) (n % 5) is - 0 0 then "FizzBuzz" - 0 _ then "Fizz" - _ 0 then "Buzz" - _ _ then n; - -/* Test FizzBuzz implementation */ -fizzbuzz_15 : fizzbuzz 15; -fizzbuzz_3 : fizzbuzz 3; -fizzbuzz_5 : fizzbuzz 5; -fizzbuzz_7 : fizzbuzz 7; - -/* ===== TABLE ACCESS IN WHEN EXPRESSIONS ===== */ - -/* User data for testing */ -admin_user : {role: "admin", level: 5, name: "Alice"}; -user_user : {role: "user", level: 2, name: "Bob"}; -guest_user : {role: "guest", level: 0, name: "Charlie"}; - -/* Access control using table access in patterns */ -access_level : user -> - when user.role is - "admin" then "full access" - "user" then "limited access" - _ then "no access"; - -/* Test access control */ -admin_access : access_level admin_user; -user_access : access_level user_user; -guest_access : access_level guest_user; - -/* ===== FUNCTION CALLS IN WHEN EXPRESSIONS ===== */ - -/* Helper functions for testing */ -is_even : n -> n % 2 = 0; - -/* Number classification using function calls in patterns */ -classify_number : n -> - when (is_even n) is - true then "even number" - false then "odd number"; - -/* Test number classification */ -even_class : classify_number 4; -odd_class : classify_number 7; - -/* ===== SIMPLIFIED MULTI-VALUE VALIDATION ===== */ - -/* Simplified validation - avoid complex and expressions */ -validate_name : name -> name != ""; -validate_age : age -> age >= 0; - -validate_user : name age -> - when (validate_name name) (validate_age age) is - true true then "valid user" - true false then "invalid age" - false true then "invalid name" - false false then "invalid user"; - -/* Test user validation */ -valid_user : validate_user "Alice" 30; -invalid_age : validate_user "Bob" -5; -invalid_name : validate_user "" 25; - -/* ===== OUTPUT RESULTS ===== */ - -/* Output FizzBuzz results */ -..out "FizzBuzz Results:"; -..out fizzbuzz_15; -..out fizzbuzz_3; -..out fizzbuzz_5; -..out fizzbuzz_7; - -/* Output access control results */ -..out "Access Control Results:"; -..out admin_access; -..out user_access; -..out guest_access; - -/* Output number classification results */ -..out "Number Classification Results:"; -..out even_class; -..out odd_class; - -/* Output user validation results */ -..out "User Validation Results:"; -..out valid_user; -..out invalid_age; -..out invalid_name; - -..out "Enhanced case statements test completed successfully"; \ No newline at end of file |