import { autolink } from './autolink'; import { input } from './context'; import { inspect } from '../debug.test'; describe('Unit: parser/autolink', () => { describe('autolink', () => { const parser = autolink; it('basic', () => { assert.deepStrictEqual(inspect(parser, input('http://host)')), [['http://host)'], '']); assert.deepStrictEqual(inspect(parser, input('http://host\\')), [['http://host\\'], '']); assert.deepStrictEqual(inspect(parser, input('!http://host)')), [['!', 'http://host)'], '']); assert.deepStrictEqual(inspect(parser, input('!http://host\\')), [['!', 'http://host\\'], '']); assert.deepStrictEqual(inspect(parser, input('#a')), [['#a'], '']); assert.deepStrictEqual(inspect(parser, input('@a#b')), [['@a#b'], '']); assert.deepStrictEqual(inspect(parser, input('\\\n')), [['\\', '
'], '']); assert.deepStrictEqual(inspect(parser, input('a#b')), [['a', '#b'], '']); assert.deepStrictEqual(inspect(parser, input('0a#b')), [['0a', '#b'], '']); assert.deepStrictEqual(inspect(parser, input('あ#b')), [['あ', '#b'], '']); assert.deepStrictEqual(inspect(parser, input('あい#b')), [['あい', '#b'], '']); assert.deepStrictEqual(inspect(parser, input('0aあ#b')), [['0a', 'あ', '#b'], '']); assert.deepStrictEqual(inspect(parser, input('0aあい#b')), [['0a', 'あい', '#b'], '']); assert.deepStrictEqual(inspect(parser, input('a\n#b')), [['a', '
', '#b'], '']); assert.deepStrictEqual(inspect(parser, input('a\\\n#b')), [['a', '\\', '
', '#b'], '']); assert.deepStrictEqual(inspect(parser, input('0a>>b')), [['0a', '>', '>b'], '']); }); }); });