diff options
Diffstat (limited to 'test/trans.d/case/erract2.rl')
-rw-r--r-- | test/trans.d/case/erract2.rl | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/test/trans.d/case/erract2.rl b/test/trans.d/case/erract2.rl new file mode 100644 index 00000000..f6007151 --- /dev/null +++ b/test/trans.d/case/erract2.rl @@ -0,0 +1,90 @@ +/* + * @LANG: indep + * @NEEDS_EOF: yes + * + * Test error actions. + */ + +%%{ + machine erract; + + action err_start { print_str "err_start\n"; } + action err_all { print_str "err_all\n"; } + action err_middle { print_str "err_middle\n"; } + action err_out { print_str "err_out\n"; } + + action eof_start { print_str "eof_start\n"; } + action eof_all { print_str "eof_all\n"; } + action eof_middle { print_str "eof_middle\n"; } + action eof_out { print_str "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" +##### 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 |