import { message } from './message'; import { some } from '../../../combinator'; import { input } from '../../context'; import { inspect } from '../../../debug.test'; describe('Unit: parser/block/extension/message', () => { describe('message', () => { const parser = some(message); it('invalid', () => { assert.deepStrictEqual(inspect(parser, input('~~~message\n~~~')), undefined); assert.deepStrictEqual(inspect(parser, input('~~~message/\n~~~')), undefined); assert.deepStrictEqual(inspect(parser, input('~~~message/a\n~~~')), [['
~~~message/a\n~~~'], '']); assert.deepStrictEqual(inspect(parser, input('~~~message/note a\n~~~')), [['
~~~message/note a\n~~~'], '']); }); it('valid', () => { assert.deepStrictEqual(inspect(parser, input('~~~message/note\n~~~')), [[''], '']); assert.deepStrictEqual(inspect(parser, input('~~~message/note\n\n~~~')), [[''], '']); assert.deepStrictEqual(inspect(parser, input('~~~message/note\na\n~~~')), [[''], '']); assert.deepStrictEqual(inspect(parser, input('~~~message/note\na\n\n- \n~~~')), [[''], '']); assert.deepStrictEqual(inspect(parser, input('~~~message/note\n# a\n~~~')), [[''], '']); assert.deepStrictEqual(inspect(parser, input('~~~message/caution\n~~~')), [[''], '']); assert.deepStrictEqual(inspect(parser, input('~~~message/warning\n~~~')), [[''], '']); }); }); });