diff options
| author | Akshay Nair <phenax5@gmail.com> | 2022-01-07 18:13:40 +0530 |
|---|---|---|
| committer | Akshay Nair <phenax5@gmail.com> | 2022-01-07 18:14:06 +0530 |
| commit | 6639605b395ceb1355c95e06ff0e1470adc54101 (patch) | |
| tree | 01e300c50086f8db47300388ab3d7a5e5f83072d /tests/basic.spec.ts | |
| parent | b3fc08cae05f997e71d846109d400e630b8a4c35 (diff) | |
| download | elxr-6639605b395ceb1355c95e06ff0e1470adc54101.tar.gz elxr-6639605b395ceb1355c95e06ff0e1470adc54101.zip | |
refactor: simplifies quantifier logic + moves stuff around
Diffstat (limited to 'tests/basic.spec.ts')
| -rw-r--r-- | tests/basic.spec.ts | 60 |
1 files changed, 29 insertions, 31 deletions
diff --git a/tests/basic.spec.ts b/tests/basic.spec.ts index 4e0a938..59ce573 100644 --- a/tests/basic.spec.ts +++ b/tests/basic.spec.ts @@ -1,18 +1,12 @@ import { left, right } from 'fp-ts/Either' import { - many0, - digit, integer, whitespace, - suffixed, - prefixed, whitespaces0, delimited, - symbol, - optional, -} from '../src/parser' -import { parser } from '../src' -import {some} from 'fp-ts/lib/Option' +} from '../src/parser/utils' +import { parser } from '../src/parser' +import { some } from 'fp-ts/Option' describe('Foobar', () => { it('should do shit', () => { @@ -31,32 +25,36 @@ describe('Foobar', () => { }) it('should maybeshut', () => { - expect(parser(/^ .\s(\n)\b \T $/.source)).toEqual(right([ - [ - some({ tag: 'Start' }), + expect(parser(/^ .\s(\n)\b \T $/.source)).toEqual( + right([ [ - { tag: 'AnyItem' }, - { tag: 'AnyString' }, - { tag: 'Group', exprs: [{ tag: 'AnyNumber' },] }, - { tag: 'AnyBool' }, - { tag: 'Truthy' }, + some({ tag: 'Start' }), + [ + { tag: 'AnyItem' }, + { tag: 'AnyString' }, + { tag: 'Group', exprs: [{ tag: 'AnyNumber' }] }, + { tag: 'AnyBool' }, + { tag: 'Truthy' }, + ], + some({ tag: 'End' }), ], - some({ tag: 'End' }), - ], - '' - ])) + '', + ]) + ) - expect(parser(/^ \s* \T? \n+ $/.source)).toEqual(right([ - [ - some({ tag: 'Start' }), + expect(parser(/^ \s* \T? \n+ $/.source)).toEqual( + right([ [ - { tag: 'ZeroOrMore', expr: { tag: 'AnyString' } }, - { tag: 'Optional', expr: { tag: 'Truthy' } }, - { tag: 'OneOrMore', expr: { tag: 'AnyNumber' } }, + some({ tag: 'Start' }), + [ + { tag: 'ZeroOrMore', expr: { tag: 'AnyString' } }, + { tag: 'Optional', expr: { tag: 'Truthy' } }, + { tag: 'OneOrMore', expr: { tag: 'AnyNumber' } }, + ], + some({ tag: 'End' }), ], - some({ tag: 'End' }), - ], - '' - ])) + '', + ]) + ) }) }) |
