summaryrefslogtreecommitdiff
path: root/test/testcase.fr
diff options
context:
space:
mode:
Diffstat (limited to 'test/testcase.fr')
-rw-r--r--test/testcase.fr83
1 files changed, 83 insertions, 0 deletions
diff --git a/test/testcase.fr b/test/testcase.fr
new file mode 100644
index 000000000000..13775d20a99c
--- /dev/null
+++ b/test/testcase.fr
@@ -0,0 +1,83 @@
+
+
+1 2 3
+.s
+
+: test-case ( n -- )
+ case
+ 0 of
+ ." zero"
+ endof
+ 1 of
+ ." one"
+ endof
+ ." something else"
+ endcase
+ cr
+ ;
+
+
+see test-case
+
+.( You should see 1 2 3 ->)
+.s
+.( <-) cr
+
+.( You should see "zero": )
+0 test-case
+
+.( You should see "one": )
+1 test-case
+
+.( You should see "something else": )
+324 test-case
+
+.( You should still see 1 2 3 ->)
+.s
+.( <-) cr
+
+
+: test-case-2 ( n -- )
+ case
+ 0 of
+ ." zero"
+ fallthrough
+ 1 of
+ ." one"
+ endof
+ 2 of
+ ." two"
+ fallthrough
+ ." something else"
+ endcase
+ cr
+ ;
+
+
+see test-case-2
+
+cr
+
+.( You should once more see 1 2 3 ->)
+.s
+.( <-) cr
+
+.( You should see "zeroone": )
+0 test-case-2
+
+.( You should see "one": )
+1 test-case-2
+
+.( You should see "two": )
+2 test-case-2
+
+.( You should see "something else": )
+324 test-case-2
+
+.( You should still see 1 2 3 ->)
+.s
+.( <-) cr
+
+
+
+bye