-
Notifications
You must be signed in to change notification settings - Fork 21
/
Copy pathtest.js
102 lines (84 loc) · 3.02 KB
/
test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
import assert from 'assert';
import * as esm from 'unicode-properties';
import esmDefault from 'unicode-properties';
import { createRequire } from 'module';
const require = createRequire(import.meta.url);
const cjs = require('../');
describe('unicode-properties', () => {
describe('esm', () => {
test(esm);
});
describe('esm (default export)', () => {
test(esmDefault);
});
describe('cjs', () => {
test(cjs);
});
});
function test(unicode) {
it('getCategory', () => {
assert.equal(unicode.getCategory('2'.charCodeAt()), 'Nd');
assert.equal(unicode.getCategory('x'.charCodeAt()), 'Ll');
});
it('getCombiningClass', () => {
assert.equal(unicode.getCombiningClass('x'.charCodeAt()), 'Not_Reordered');
assert.equal(unicode.getCombiningClass('́'.charCodeAt()), 'Above');
assert.equal(unicode.getCombiningClass('ٕ'.charCodeAt()), 'Below');
assert.equal(unicode.getCombiningClass('ٔ'.charCodeAt()), 'Above');
});
it('getScript', () => {
assert.equal(unicode.getScript('x'.charCodeAt()), 'Latin');
assert.equal(unicode.getScript('غ'.charCodeAt()), 'Arabic');
});
it('getEastAsianWidth', () => {
assert.equal(unicode.getEastAsianWidth('x'.charCodeAt()), 'Na');
assert.equal(unicode.getEastAsianWidth('杜'.charCodeAt()), 'W');
assert.equal(unicode.getEastAsianWidth('Æ'.charCodeAt()), 'A');
});
it('getNumericValue', () => {
assert.equal(unicode.getNumericValue('2'.charCodeAt()), 2);
assert.equal(unicode.getNumericValue('x'.charCodeAt()), null);
});
it('isAlphabetic', () => {
assert(unicode.isAlphabetic('x'.charCodeAt()));
assert(!unicode.isAlphabetic('2'.charCodeAt()));
});
it('isDigit', () => {
assert(!unicode.isDigit('x'.charCodeAt()));
assert(unicode.isDigit('2'.charCodeAt()));
});
it('isPunctuation', () => {
assert(!unicode.isPunctuation('x'.charCodeAt()));
assert(unicode.isPunctuation('.'.charCodeAt()));
});
it('isLowerCase', () => {
assert(!unicode.isLowerCase('X'.charCodeAt()));
assert(!unicode.isLowerCase('2'.charCodeAt()));
assert(unicode.isLowerCase('x'.charCodeAt()));
});
it('isUpperCase', () => {
assert(unicode.isUpperCase('X'.charCodeAt()));
assert(!unicode.isUpperCase('2'.charCodeAt()));
assert(!unicode.isUpperCase('x'.charCodeAt()));
});
it('isTitleCase', () => {
assert(unicode.isTitleCase('Dz'.charCodeAt()));
assert(!unicode.isTitleCase('2'.charCodeAt()));
assert(!unicode.isTitleCase('x'.charCodeAt()));
});
it('isWhiteSpace', () => {
assert(unicode.isWhiteSpace(' '.charCodeAt()));
assert(!unicode.isWhiteSpace('2'.charCodeAt()));
assert(!unicode.isWhiteSpace('x'.charCodeAt()));
});
it('isBaseForm', () => {
assert(unicode.isBaseForm('2'.charCodeAt()));
assert(unicode.isBaseForm('x'.charCodeAt()));
assert(!unicode.isBaseForm('́'.charCodeAt()));
});
it('isMark', () => {
assert(!unicode.isMark('2'.charCodeAt()));
assert(!unicode.isMark('x'.charCodeAt()));
assert(unicode.isMark('́'.charCodeAt()));
});
}