Skip to content

Commit 8822bdd

Browse files
committed
Add TokenStreamHelper test
1 parent ddaf947 commit 8822bdd

File tree

1 file changed

+49
-0
lines changed

1 file changed

+49
-0
lines changed

test/TokenStreamHelper.test.js

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
import { expect } from 'chai';
2+
import TokenStreamHelper from '../src/tokenizer/TokenStreamHelper.js';
3+
4+
describe('Token Stream Helper', () => {
5+
it('TokenStream#isWhitespace() should be ok', () => {
6+
expect(TokenStreamHelper.isWhitespace(' ')).to.be.true;
7+
expect(TokenStreamHelper.isWhitespace('\t')).to.be.true;
8+
expect(TokenStreamHelper.isWhitespace('\n')).to.be.true;
9+
expect(TokenStreamHelper.isWhitespace('1')).to.be.false;
10+
expect(TokenStreamHelper.isWhitespace('a')).to.be.false;
11+
});
12+
13+
it('TokenStream#isDigit() should be ok', () => {
14+
expect(TokenStreamHelper.isDigit('0')).to.be.true;
15+
expect(TokenStreamHelper.isDigit('1')).to.be.true;
16+
expect(TokenStreamHelper.isDigit('9')).to.be.true;
17+
expect(TokenStreamHelper.isDigit('a')).to.be.false;
18+
expect(TokenStreamHelper.isDigit('\n')).to.be.false;
19+
});
20+
21+
it('TokenStream#isKeyword() should be ok', () => {
22+
expect(TokenStreamHelper.isKeyword('def')).to.be.true;
23+
expect(TokenStreamHelper.isKeyword('let')).to.be.true;
24+
expect(TokenStreamHelper.isKeyword('fn')).to.be.true;
25+
expect(TokenStreamHelper.isKeyword('if')).to.be.true;
26+
expect(TokenStreamHelper.isKeyword('(')).to.be.false;
27+
expect(TokenStreamHelper.isKeyword('+')).to.be.false;
28+
});
29+
30+
it('TokenStream#isPunc() should be ok', () => {
31+
expect(TokenStreamHelper.isPunc('(')).to.be.true;
32+
expect(TokenStreamHelper.isPunc('[')).to.be.true;
33+
expect(TokenStreamHelper.isPunc('{')).to.be.true;
34+
expect(TokenStreamHelper.isPunc(',')).to.be.true;
35+
expect(TokenStreamHelper.isPunc(';')).to.be.true;
36+
expect(TokenStreamHelper.isPunc('a')).to.be.false;
37+
expect(TokenStreamHelper.isPunc('\n')).to.be.false;
38+
expect(TokenStreamHelper.isPunc('let')).to.be.false;
39+
});
40+
41+
it('TokenStream#isOpChar() should be ok', () => {
42+
expect(TokenStreamHelper.isOpChar('+')).to.be.true;
43+
expect(TokenStreamHelper.isOpChar('-')).to.be.true;
44+
expect(TokenStreamHelper.isOpChar('*')).to.be.true;
45+
expect(TokenStreamHelper.isOpChar('def')).to.be.false;
46+
expect(TokenStreamHelper.isOpChar('(')).to.be.false;
47+
expect(TokenStreamHelper.isOpChar('\n')).to.be.false;
48+
});
49+
});

0 commit comments

Comments
 (0)