diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/paca.mjs | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/paca.mjs b/tests/paca.mjs index 0ba2d61..b259968 100644 --- a/tests/paca.mjs +++ b/tests/paca.mjs @@ -3,6 +3,7 @@ import { explode, reduced, reductions, runTests } from "sjs"; import { SyntaxError, ConcatStep, + TRANSITION_FNS, shouldConcat, isOperator, numFromDigits, @@ -43,6 +44,37 @@ import { +const test_TRANSITION_FNS = t => { + t.start("TRANSITION_FNS"); + + t.testing("\"\\\\\" depends on `out` and `context`", () => { + t.assertEq( + TRANSITION_FNS["\\"]( + { out: 1, context: 2 }, + null, + null, + null, + ), + { out: 1, context: 2, state: "escaping" }, + ); + }); + + t.testing("\"{\" only depends on `out`", () => { + t.assertEq( + TRANSITION_FNS["{"]({ out: "" }, null, null, null), + { + out: "", + state: "range", + context: { + from: [], + to: [], + where: "from", + }, + }, + ); + }); +}; + const test_shouldConcat = t => { t.start("shouldConcat()"); @@ -2351,6 +2383,7 @@ const test_compile = t => { runTests([ + test_TRANSITION_FNS, test_shouldConcat, test_isOperator, test_numFromDigits, |
