summaryrefslogtreecommitdiff
path: root/test/erract2.rl
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@lorry>2014-10-13 19:14:30 +0000
committerLorry Tar Creator <lorry-tar-importer@lorry>2014-10-13 19:14:30 +0000
commiteafd7a3974e8605fd02794269db6114a3446e016 (patch)
tree064737b35dbe10f2995753ead92f95bac30ba048 /test/erract2.rl
downloadragel-tarball-eafd7a3974e8605fd02794269db6114a3446e016.tar.gz
ragel-6.9ragel-6.9
Diffstat (limited to 'test/erract2.rl')
-rw-r--r--test/erract2.rl92
1 files changed, 92 insertions, 0 deletions
diff --git a/test/erract2.rl b/test/erract2.rl
new file mode 100644
index 0000000..b1fbfbf
--- /dev/null
+++ b/test/erract2.rl
@@ -0,0 +1,92 @@
+/*
+ * @LANG: indep
+ *
+ * Test error actions.
+ */
+%%
+%%{
+ machine ErrAct;
+
+ action err_start { prints "err_start\n"; }
+ action err_all { prints "err_all\n"; }
+ action err_middle { prints "err_middle\n"; }
+ action err_out { prints "err_out\n"; }
+
+ action eof_start { prints "eof_start\n"; }
+ action eof_all { prints "eof_all\n"; }
+ action eof_middle { prints "eof_middle\n"; }
+ action eof_out { prints "eof_out\n"; }
+
+ main := ( 'hello'
+ >err err_start $err err_all <>err err_middle %err err_out
+ >eof eof_start $eof eof_all <>eof eof_middle %eof eof_out
+ ) '\n';
+}%%
+
+/* _____INPUT_____
+""
+"h"
+"x"
+"he"
+"hx"
+"hel"
+"hex"
+"hell"
+"helx"
+"hello"
+"hellx"
+"hello\n"
+"hellox"
+_____INPUT_____ */
+
+/* _____OUTPUT_____
+err_start
+eof_start
+err_all
+eof_all
+FAIL
+err_all
+err_middle
+eof_all
+eof_middle
+FAIL
+err_start
+err_all
+FAIL
+err_all
+err_middle
+eof_all
+eof_middle
+FAIL
+err_all
+err_middle
+FAIL
+err_all
+err_middle
+eof_all
+eof_middle
+FAIL
+err_all
+err_middle
+FAIL
+err_all
+err_middle
+eof_all
+eof_middle
+FAIL
+err_all
+err_middle
+FAIL
+err_all
+err_out
+eof_all
+eof_out
+FAIL
+err_all
+err_middle
+FAIL
+ACCEPT
+err_all
+err_out
+FAIL
+_____OUTPUT_____ */