UNPKG

stream-token-parser

Version:

Token parser designed based on stream property. Accept chunk string and parse it into tokens simultaneously. [readme-lang:zh]基于流特性设计的token解析器,接受一个chunk的字符串,同时解析成tokens。

61 lines (55 loc) 1.39 kB
'use strict'; let { parser } = require('..'); let assert = require('assert'); let extractToken = (token) => { return { text: token.text, name: token.tokenType.name }; }; let jsonTokenTypes = require('../apply/jsonTokenTypes'); describe('json', () => { it('string', () => { assert.deepEqual( parser.parse('{"a": 1, "b": "a"}', jsonTokenTypes).map(extractToken), [{ text: '{', name: 'obejctLeftBracket' }, { text: '"a"', name: 'string' }, { text: ':', name: 'mapDelimiter' }, { text: ' ', name: 'whiteSpace' }, { text: '1', name: 'number' }, { text: ',', name: 'comma' }, { text: ' ', name: 'whiteSpace' }, { text: '"b"', name: 'string' }, { text: ':', name: 'mapDelimiter' }, { text: ' ', name: 'whiteSpace' }, { text: '"a"', name: 'string' }, { text: '}', name: 'obejctRightBracket' }] ); }); });