|
1 | 1 | import test, { ExecutionContext } from 'ava' |
2 | 2 |
|
3 | 3 | import { Chars } from './chars' |
4 | | -import alphaEncoder from './encoder/alpha' |
5 | | -import alphaCaseEncoder from './encoder/alphaCase' |
6 | | -import alphaNumEncoder from './encoder/alphaNum' |
7 | | -import alphaNumCaseEncoder from './encoder/alphaNumCase' |
8 | | -import base32Encoder from './encoder/base32' |
9 | | -import base32HexCaseEncoder from './encoder/base32HexCase' |
10 | | -import decimalEncoder from './encoder/decimal' |
11 | | -import hexCaseEncoder from './encoder/hexCase' |
12 | | -import safe32Encoder from './encoder/safe32' |
13 | | -import safe64Encoder from './encoder/safe64' |
14 | | -import safeAsciiEncoder from './encoder/safeAscii' |
15 | | -import symbolEncoder from './encoder/symbol' |
| 4 | +import encoder from './encoder' |
16 | 5 |
|
17 | | -type PuidEncoder = (n: number) => number |
18 | | - |
19 | | -const encoder = (t: ExecutionContext, encoder: PuidEncoder, chars: string) => { |
20 | | - const codes = [...Array(chars.length).keys()].map(code => encoder(code)) |
| 6 | +const chars_encoder = (t: ExecutionContext, chars: string) => { |
| 7 | + const chars_encoder = encoder(chars) |
| 8 | + const codes = [...Array(chars.length).keys()].map(code => chars_encoder(code)) |
21 | 9 | const encoded = String.fromCharCode(...codes) |
22 | 10 | t.is(encoded, chars) |
23 | 11 | } |
24 | 12 |
|
25 | | -test('alpha() encoder chars', (t) => encoder(t, alphaEncoder(), Chars.Alpha)) |
26 | | -test('alphaCase() encoder chars', (t) => encoder(t, alphaCaseEncoder(), Chars.AlphaLower)) |
27 | | -test('alphaCase(true) encoder chars', (t) => encoder(t, alphaCaseEncoder(true), Chars.AlphaUpper)) |
28 | | -test('alphaNumEncoder() encoder chars', (t) => encoder(t, alphaNumEncoder(), Chars.AlphaNum)) |
29 | | -test('alphaNumCaseEncoder() encoder chars', (t) => encoder(t, alphaNumCaseEncoder(), Chars.AlphaNumLower)) |
30 | | -test('alphaNumCaseEncoder(true) encoder chars', (t) => encoder(t, alphaNumCaseEncoder(true), Chars.AlphaNumUpper)) |
31 | | -test('base32Encoder() encoder chars', (t) => encoder(t, base32Encoder(), Chars.Base32)) |
32 | | -test('base32HexCaseEncoder() encoder chars', (t) => encoder(t, base32HexCaseEncoder(), Chars.Base32Hex)) |
33 | | -test('base32HexCaseEncoder(true) encoder chars', (t) => encoder(t, base32HexCaseEncoder(true), Chars.Base32HexUpper)) |
34 | | -test('decimalEncoder() encoder chars', (t) => encoder(t, decimalEncoder(), Chars.Decimal)) |
35 | | -test('hexCaseEncoder() encoder chars', (t) => encoder(t, hexCaseEncoder(), Chars.Hex)) |
36 | | -test('hexCaseEncoder(true) encoder chars', (t) => encoder(t, hexCaseEncoder(true), Chars.HexUpper)) |
37 | | -test('safeAsciiEncoder() encoder chars', (t) => encoder(t, safeAsciiEncoder(), Chars.SafeAscii)) |
38 | | -test('safe32Encoder() encoder chars', (t) => encoder(t, safe32Encoder(), Chars.Safe32)) |
39 | | -test('safe64Encoder encoder chars', (t) => encoder(t, safe64Encoder(), Chars.Safe64)) |
40 | | -test('symbolEncoder() encoder chars', (t) => encoder(t, symbolEncoder(), Chars.Symbol)) |
| 13 | +test('alpha() encoder chars', (t) => chars_encoder(t, Chars.Alpha)) |
| 14 | +test('alphaCase() encoder chars', (t) => chars_encoder(t, Chars.AlphaLower)) |
| 15 | +test('alphaCase(true) encoder chars', (t) => chars_encoder(t, Chars.AlphaUpper)) |
| 16 | +test('alphaNumEncoder() encoder chars', (t) => chars_encoder(t, Chars.AlphaNum)) |
| 17 | +test('alphaNumCaseEncoder() encoder chars', (t) => chars_encoder(t, Chars.AlphaNumLower)) |
| 18 | +test('alphaNumCaseEncoder(true) encoder chars', (t) => chars_encoder(t, Chars.AlphaNumUpper)) |
| 19 | +test('base32Encoder() encoder chars', (t) => chars_encoder(t, Chars.Base32)) |
| 20 | +test('base32HexCaseEncoder() encoder chars', (t) => chars_encoder(t, Chars.Base32Hex)) |
| 21 | +test('base32HexCaseEncoder(true) encoder chars', (t) => chars_encoder(t, Chars.Base32HexUpper)) |
| 22 | +test('decimalEncoder() encoder chars', (t) => chars_encoder(t, Chars.Decimal)) |
| 23 | +test('hexCaseEncoder() encoder chars', (t) => chars_encoder(t, Chars.Hex)) |
| 24 | +test('hexCaseEncoder(true) encoder chars', (t) => chars_encoder(t, Chars.HexUpper)) |
| 25 | +test('safeAsciiEncoder() encoder chars', (t) => chars_encoder(t, Chars.SafeAscii)) |
| 26 | +test('safe32Encoder() encoder chars', (t) => chars_encoder(t, Chars.Safe32)) |
| 27 | +test('safe64Encoder encoder chars', (t) => chars_encoder(t, Chars.Safe64)) |
| 28 | +test('symbolEncoder() encoder chars', (t) => chars_encoder(t, Chars.Symbol)) |
0 commit comments