@cloudpss/ubjson 0.5.55 → 0.6.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/base/decoder.js +2 -5
- package/dist/base/decoder.js.map +1 -1
- package/dist/base/encoder.js +6 -8
- package/dist/base/encoder.js.map +1 -1
- package/dist/encoder.js +8 -5
- package/dist/encoder.js.map +1 -1
- package/dist/stream/decoder.js +0 -2
- package/dist/stream/decoder.js.map +1 -1
- package/dist/stream/encoder.js +0 -2
- package/dist/stream/encoder.js.map +1 -1
- package/dist/stream-helper/encoder.js +0 -1
- package/dist/stream-helper/encoder.js.map +1 -1
- package/package.json +1 -1
- package/tests/{decode.js → decode.ts} +13 -11
- package/tests/e2e/{.data.js → .data.ts} +2 -4
- package/tests/e2e/{no-buffer-text.js → no-buffer-text.ts} +2 -2
- package/tests/e2e/{no-buffer.js → no-buffer.ts} +2 -2
- package/tests/e2e/{no-encode-into.js → no-encode-into.ts} +2 -2
- package/tests/e2e/{no-textencoder-decoder.js → no-textencoder-decoder.ts} +2 -2
- package/tests/e2e/{normal.js → normal.ts} +1 -1
- package/tests/e2e/{stream.js → stream.ts} +5 -5
- package/tests/{encode.js → encode.ts} +1 -1
- package/tests/{huge-string.js → huge-string.ts} +1 -1
- package/tests/rxjs/{decode.js → decode.ts} +8 -10
- package/tests/rxjs/{encode.js → encode.ts} +2 -2
- package/tests/stream/{decode.js → decode.ts} +4 -4
- package/tests/stream/{encode.js → encode.ts} +2 -2
- /package/tests/{.utils.js → .utils.ts} +0 -0
- /package/tests/{many.js → many.ts} +0 -0
- /package/tests/stream/{many.js → many.ts} +0 -0
- /package/tests/{string-encoding.js → string-encoding.ts} +0 -0
package/dist/base/decoder.js
CHANGED
|
@@ -3,16 +3,13 @@ import { toUint8Array } from '../helper/utils.js';
|
|
|
3
3
|
import { UnexpectedEofError } from '../helper/errors.js';
|
|
4
4
|
/** decoder */
|
|
5
5
|
export class DecoderBase {
|
|
6
|
-
options;
|
|
7
6
|
constructor(data, options) {
|
|
8
7
|
this.options = options;
|
|
8
|
+
/** 当前读指针位置 */
|
|
9
|
+
this.offset = 0;
|
|
9
10
|
this.data = toUint8Array(data);
|
|
10
11
|
this.view = new DataView(this.data.buffer, this.data.byteOffset, this.data.byteLength);
|
|
11
12
|
}
|
|
12
|
-
view;
|
|
13
|
-
data;
|
|
14
|
-
/** 当前读指针位置 */
|
|
15
|
-
offset = 0;
|
|
16
13
|
/** EOF */
|
|
17
14
|
eof() {
|
|
18
15
|
throw new UnexpectedEofError();
|
package/dist/base/decoder.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decoder.js","sourceRoot":"","sources":["../../src/base/decoder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,QAAQ,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACzF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGzD,cAAc;AACd,MAAM,OAAO,WAAW;
|
|
1
|
+
{"version":3,"file":"decoder.js","sourceRoot":"","sources":["../../src/base/decoder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,QAAQ,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACzF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGzD,cAAc;AACd,MAAM,OAAO,WAAW;IACpB,YACI,IAAkB,EACT,OAAuB;QAAvB,YAAO,GAAP,OAAO,CAAgB;QAQpC,cAAc;QACJ,WAAM,GAAG,CAAC,CAAC;QAPjB,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3F,CAAC;IAMD,UAAU;IACA,GAAG;QACT,MAAM,IAAI,kBAAkB,EAAE,CAAC;IACnC,CAAC;IAED,SAAS;IACT,MAAM;QACF,MAAM,MAAM,GAAG,qBAAqB,CAAC,IAA2B,CAAC,CAAC;QAClE,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QAC3C,OAAO,QAAQ,CAAC,IAA2B,EAAE,MAAM,CAAC,CAAC;IACzD,CAAC;CACJ"}
|
package/dist/base/encoder.js
CHANGED
|
@@ -8,14 +8,12 @@ const { isView } = ArrayBuffer;
|
|
|
8
8
|
const { keys: objectKeys } = Object;
|
|
9
9
|
/** 编码至 ubjson */
|
|
10
10
|
export class EncoderBase {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
/** buffer 的 DataView */
|
|
18
|
-
view;
|
|
11
|
+
constructor() {
|
|
12
|
+
/** 序列化对象时排序属性 */
|
|
13
|
+
this.sortObjectKeys = false;
|
|
14
|
+
/** 当前写指针位置 */
|
|
15
|
+
this.length = 0;
|
|
16
|
+
}
|
|
19
17
|
/** 编码至 ubjson,对于 `undefined` 写入 NOOP */
|
|
20
18
|
writeValue(value) {
|
|
21
19
|
if (value === undefined) {
|
package/dist/base/encoder.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encoder.js","sourceRoot":"","sources":["../../src/base/encoder.ts"],"names":[],"mappings":"AACA,OAAO,EAEH,OAAO,EAEP,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,qBAAqB,GACxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE3E,MAAM,iBAAiB,GAAG,KAAK,CAAC;AAChC,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;AAC1B,6DAA6D;AAC7D,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC;AAC/B,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;AAEpC,iBAAiB;AACjB,MAAM,OAAgB,WAAW;
|
|
1
|
+
{"version":3,"file":"encoder.js","sourceRoot":"","sources":["../../src/base/encoder.ts"],"names":[],"mappings":"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"}
|
package/dist/encoder.js
CHANGED
|
@@ -3,11 +3,14 @@ const BLOCK_SIZE = 1024 * 64; // 64 KiB
|
|
|
3
3
|
const MAX_SIZE = 1024 * 1024 * 128; //128 MiB
|
|
4
4
|
/** 编码至 ubjson */
|
|
5
5
|
export class Encoder extends EncoderBase {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
constructor() {
|
|
7
|
+
super(...arguments);
|
|
8
|
+
this.flushedBuffers = [];
|
|
9
|
+
/** 通过内存池减少分配 */
|
|
10
|
+
this.pool = new Uint8Array(BLOCK_SIZE);
|
|
11
|
+
/** 缓存当前容量,避免对象访问耗时 */
|
|
12
|
+
this.capacity = 0;
|
|
13
|
+
}
|
|
11
14
|
/**
|
|
12
15
|
* 确保 buffer 还有 capacity 的空闲空间
|
|
13
16
|
*/
|
package/dist/encoder.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encoder.js","sourceRoot":"","sources":["../src/encoder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,SAAS;AACvC,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,SAAS;AAE7C,iBAAiB;AACjB,MAAM,OAAO,OAAQ,SAAQ,WAAW;
|
|
1
|
+
{"version":3,"file":"encoder.js","sourceRoot":"","sources":["../src/encoder.ts"],"names":[],"mappings":"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"}
|
package/dist/stream/decoder.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decoder.js","sourceRoot":"","sources":["../../src/stream/decoder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAG5C,kBAAkB;AAClB,MAAM,OAAO,iBAAiB;IAC1B,YAAY,OAAuB;QAC/B,IAAI,CAAC,MAAM,GAAG,IAAI,OAAO,EAAgB,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YACxC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;gBACZ,kCAAkC;gBAClC,IAAI,KAAK,IAAI,IAAI;oBAAE,OAAO;gBAC1B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACnC,CAAC;YACD,KAAK,EAAE,CAAC,GAAU,EAAE,EAAE;gBAClB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC/B,CAAC;YACD,QAAQ,EAAE,GAAG,EAAE;gBACX,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;YAChC,CAAC;SACJ,CAAC,CAAC;IACP,CAAC;
|
|
1
|
+
{"version":3,"file":"decoder.js","sourceRoot":"","sources":["../../src/stream/decoder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAG5C,kBAAkB;AAClB,MAAM,OAAO,iBAAiB;IAC1B,YAAY,OAAuB;QAC/B,IAAI,CAAC,MAAM,GAAG,IAAI,OAAO,EAAgB,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YACxC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;gBACZ,kCAAkC;gBAClC,IAAI,KAAK,IAAI,IAAI;oBAAE,OAAO;gBAC1B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACnC,CAAC;YACD,KAAK,EAAE,CAAC,GAAU,EAAE,EAAE;gBAClB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC/B,CAAC;YACD,QAAQ,EAAE,GAAG,EAAE;gBACX,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;YAChC,CAAC;SACJ,CAAC,CAAC;IACP,CAAC;IAID,kBAAkB;IAClB,SAAS,CAAC,GAAiB,EAAE,UAAqD;QAC9E,IAAI,CAAC;YACD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;QAAC,OAAO,EAAE,EAAE,CAAC;YACV,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACzB,CAAC;IACL,CAAC;IAED,kBAAkB;IAClB,KAAK,CAAC,UAAqD;QACvD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC3B,CAAC;CACJ"}
|
package/dist/stream/encoder.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encoder.js","sourceRoot":"","sources":["../../src/stream/encoder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAGlE,kBAAkB;AAClB,MAAM,OAAO,iBAAiB;IAC1B,YAAY,OAAuB;QAC/B,IAAI,CAAC,MAAM,GAAG,IAAI,mBAAmB,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;YACtD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACP,CAAC;
|
|
1
|
+
{"version":3,"file":"encoder.js","sourceRoot":"","sources":["../../src/stream/encoder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAGlE,kBAAkB;AAClB,MAAM,OAAO,iBAAiB;IAC1B,YAAY,OAAuB;QAC/B,IAAI,CAAC,MAAM,GAAG,IAAI,mBAAmB,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;YACtD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACP,CAAC;IAID,kBAAkB;IAClB,SAAS,CAAC,GAAY,EAAE,UAAqE;QACzF,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,kBAAkB;IAClB,KAAK,CAAC,UAAqE;QACvE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACtB,UAAU,CAAC,SAAS,EAAE,CAAC;IAC3B,CAAC;CACJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encoder.js","sourceRoot":"","sources":["../../src/stream-helper/encoder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAIjD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,SAAS;AACvC,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,SAAS;AAE5C,qBAAqB;AACrB,IAAI,IAAI,GAAmC,IAAI,CAAC;AAEhD,YAAY;AACZ,SAAS,KAAK,CAAC,IAAY;IACvB,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACtC,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC;IAClB,IAAI,GAAG,IAAI,CAAC;IACZ,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,YAAY;AACZ,SAAS,IAAI,CAAC,GAA4B;IACtC,IAAI,IAAI,IAAI,IAAI,IAAI,GAAG,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;QAChD,IAAI,GAAG,GAAG,CAAC;QACX,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,kBAAkB;AAClB,MAAM,OAAO,mBAAoB,SAAQ,WAAW;
|
|
1
|
+
{"version":3,"file":"encoder.js","sourceRoot":"","sources":["../../src/stream-helper/encoder.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
5
|
import { decode, UnexpectedEof } from '../dist/index.js';
|
|
6
|
-
import { toBuffer } from './.utils.
|
|
6
|
+
import { toBuffer } from './.utils.ts';
|
|
7
7
|
|
|
8
8
|
test('decode unsupported type', () => {
|
|
9
9
|
expect(() => decode(toBuffer('!'))).toThrow();
|
|
@@ -507,17 +507,18 @@ test('decode (eof at key)', () => {
|
|
|
507
507
|
|
|
508
508
|
describe('proto poisoning attack', () => {
|
|
509
509
|
it('should remove __proto__ key', () => {
|
|
510
|
-
const obj = /** @type {Record<string, unknown>} */ (
|
|
511
|
-
|
|
510
|
+
const obj = /** @type {Record<string, unknown>} */ decode(
|
|
511
|
+
toBuffer('{', 'i', 9, '__proto__', '{', 'i', 1, 'a', 'S', 'i', 3, 'abc', '}', '}'),
|
|
512
512
|
);
|
|
513
513
|
expect(Object.hasOwn(obj, '__proto__')).toBe(false);
|
|
514
514
|
expect(obj['__proto__']).toBe(Object.prototype);
|
|
515
515
|
});
|
|
516
516
|
it('should allow __proto__ key', () => {
|
|
517
|
-
const obj = /** @type {Record<string, unknown>} */ (
|
|
518
|
-
|
|
517
|
+
const obj = /** @type {Record<string, unknown>} */ decode(
|
|
518
|
+
toBuffer('{', 'i', 9, '__proto__', '{', 'i', 1, 'a', 'S', 'i', 3, 'abc', '}', '}'),
|
|
519
|
+
{
|
|
519
520
|
protoAction: 'allow',
|
|
520
|
-
}
|
|
521
|
+
},
|
|
521
522
|
);
|
|
522
523
|
expect(Object.hasOwn(obj, '__proto__')).toBe(true);
|
|
523
524
|
expect(obj['__proto__']).toEqual({ a: 'abc' });
|
|
@@ -533,17 +534,18 @@ describe('proto poisoning attack', () => {
|
|
|
533
534
|
|
|
534
535
|
describe('constructor poisoning attack', () => {
|
|
535
536
|
it('should remove constructor key', () => {
|
|
536
|
-
const obj = /** @type {Record<string, unknown>} */ (
|
|
537
|
-
|
|
537
|
+
const obj = /** @type {Record<string, unknown>} */ decode(
|
|
538
|
+
toBuffer('{', 'i', 11, 'constructor', '{', 'i', 1, 'a', 'S', 'i', 3, 'abc', '}', '}'),
|
|
539
|
+
{
|
|
538
540
|
constructorAction: 'remove',
|
|
539
|
-
}
|
|
541
|
+
},
|
|
540
542
|
);
|
|
541
543
|
expect(Object.hasOwn(obj, 'constructor')).toBe(false);
|
|
542
544
|
expect(obj.constructor).toBe(Object);
|
|
543
545
|
});
|
|
544
546
|
it('should allow constructor key', () => {
|
|
545
|
-
const obj = /** @type {Record<string, unknown>} */ (
|
|
546
|
-
|
|
547
|
+
const obj = /** @type {Record<string, unknown>} */ decode(
|
|
548
|
+
toBuffer('{', 'i', 11, 'constructor', '{', 'i', 1, 'a', 'S', 'i', 3, 'abc', '}', '}'),
|
|
547
549
|
);
|
|
548
550
|
expect(Object.hasOwn(obj, 'constructor')).toBe(true);
|
|
549
551
|
expect(obj.constructor).toEqual({ a: 'abc' });
|
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
export const
|
|
3
|
-
/** @type {Record<string, unknown>} */
|
|
4
|
-
export const EXPECTED = {};
|
|
1
|
+
export const INPUTS: Record<string, unknown> = {};
|
|
2
|
+
export const EXPECTED: Record<string, unknown> = {};
|
|
5
3
|
|
|
6
4
|
INPUTS['number 0'] = 0;
|
|
7
5
|
INPUTS['number 1'] = 1;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { resetEnv } from '../.utils.
|
|
2
|
-
import { INPUTS, EXPECTED } from './.data.
|
|
1
|
+
import { resetEnv } from '../.utils.ts';
|
|
2
|
+
import { INPUTS, EXPECTED } from './.data.ts';
|
|
3
3
|
import { encode, decode } from '../../dist/index.js';
|
|
4
4
|
|
|
5
5
|
describe('no Buffer and no textencoder/decoder', () => {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { resetEnv } from '../.utils.
|
|
2
|
-
import { INPUTS, EXPECTED } from './.data.
|
|
1
|
+
import { resetEnv } from '../.utils.ts';
|
|
2
|
+
import { INPUTS, EXPECTED } from './.data.ts';
|
|
3
3
|
import { encode, decode } from '../../dist/index.js';
|
|
4
4
|
|
|
5
5
|
describe('no Buffer', () => {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { resetEnv } from '../.utils.
|
|
2
|
-
import { INPUTS, EXPECTED } from './.data.
|
|
1
|
+
import { resetEnv } from '../.utils.ts';
|
|
2
|
+
import { INPUTS, EXPECTED } from './.data.ts';
|
|
3
3
|
import { encode, decode } from '../../dist/index.js';
|
|
4
4
|
|
|
5
5
|
describe('no encodeInto', () => {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { resetEnv } from '../.utils.
|
|
2
|
-
import { INPUTS, EXPECTED } from './.data.
|
|
1
|
+
import { resetEnv } from '../.utils.ts';
|
|
2
|
+
import { INPUTS, EXPECTED } from './.data.ts';
|
|
3
3
|
import { encode, decode } from '../../dist/index.js';
|
|
4
4
|
|
|
5
5
|
describe('no textencoder/decoder', () => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Readable } from 'node:stream';
|
|
2
2
|
import { encode as encodeStream, decode as decodeStream } from '../../dist/stream/index.js';
|
|
3
|
-
import { EXPECTED, INPUTS } from './.data.
|
|
3
|
+
import { EXPECTED, INPUTS } from './.data.ts';
|
|
4
4
|
|
|
5
5
|
describe('stream', () => {
|
|
6
6
|
it.each(Object.keys(INPUTS))('%s', async (name) => {
|
|
@@ -8,14 +8,14 @@ describe('stream', () => {
|
|
|
8
8
|
const expected = EXPECTED[name] ?? input;
|
|
9
9
|
if (expected instanceof Error) {
|
|
10
10
|
await expect(async () => {
|
|
11
|
-
const encoded = await Readable.fromWeb(/** @type {any} */
|
|
11
|
+
const encoded = await Readable.fromWeb(/** @type {any} */ encodeStream(input)).toArray();
|
|
12
12
|
const decoded = await decodeStream(
|
|
13
|
-
/** @type {ReadableStream<Uint8Array>} */
|
|
13
|
+
/** @type {ReadableStream<Uint8Array>} */ Readable.toWeb(Readable.from(encoded)),
|
|
14
14
|
);
|
|
15
15
|
expect(decoded).toEqual(expected);
|
|
16
16
|
}).rejects.toThrow(expected);
|
|
17
17
|
} else {
|
|
18
|
-
const encoded = await Readable.fromWeb(/** @type {any} */
|
|
18
|
+
const encoded = await Readable.fromWeb(/** @type {any} */ encodeStream(input)).toArray();
|
|
19
19
|
const data = encoded.flatMap((/** @type {Buffer} */ chunk) => {
|
|
20
20
|
if (chunk.length < 2) return [chunk];
|
|
21
21
|
// split to random chunks
|
|
@@ -29,7 +29,7 @@ describe('stream', () => {
|
|
|
29
29
|
return chunks;
|
|
30
30
|
});
|
|
31
31
|
const decoded = await decodeStream(
|
|
32
|
-
/** @type {ReadableStream<Uint8Array>} */
|
|
32
|
+
/** @type {ReadableStream<Uint8Array>} */ Readable.toWeb(Readable.from(data)),
|
|
33
33
|
);
|
|
34
34
|
expect(decoded).toEqual(expected);
|
|
35
35
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
import { encode, decode } from '../dist/index.js';
|
|
6
6
|
import { getEncoder } from '../dist/encoder.js';
|
|
7
|
-
import { toArray } from './.utils.
|
|
7
|
+
import { toArray } from './.utils.ts';
|
|
8
8
|
|
|
9
9
|
// @ts-expect-error Access private property
|
|
10
10
|
const poolInit = getEncoder().pool;
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
import { jest } from '@jest/globals';
|
|
5
5
|
import { firstValueFrom, of, Subject } from 'rxjs';
|
|
6
6
|
import { decode as decodePipe } from '../../dist/rxjs/index.js';
|
|
7
|
-
import { toBuffer } from '../.utils.
|
|
7
|
+
import { toBuffer } from '../.utils.ts';
|
|
8
8
|
import { UnexpectedEofError as UnexpectedEof } from '../../dist/helper/errors.js';
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -23,15 +23,13 @@ async function decode(data) {
|
|
|
23
23
|
* @param {(data: unknown) => void} onData 数据回调
|
|
24
24
|
*/
|
|
25
25
|
async function decodeStream(observable, onData) {
|
|
26
|
-
return /** @type {Promise<void>} */ (
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
})
|
|
34
|
-
);
|
|
26
|
+
return /** @type {Promise<void>} */ new Promise((resolve, reject) => {
|
|
27
|
+
observable.pipe(decodePipe()).subscribe({
|
|
28
|
+
next: onData,
|
|
29
|
+
error: reject,
|
|
30
|
+
complete: resolve,
|
|
31
|
+
});
|
|
32
|
+
});
|
|
35
33
|
}
|
|
36
34
|
|
|
37
35
|
test('decode unsupported type', async () => {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
import { firstValueFrom, of, map, reduce, Subject, toArray as rxjsToArray } from 'rxjs';
|
|
5
5
|
import { encode } from '../../dist/rxjs/index.js';
|
|
6
6
|
import { decode, encode as encodeRef } from '../../dist/index.js';
|
|
7
|
-
import { toArray } from '../.utils.
|
|
7
|
+
import { toArray } from '../.utils.ts';
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* 包装为 promise
|
|
@@ -304,7 +304,7 @@ test('encode object (only null values)', async () => {
|
|
|
304
304
|
});
|
|
305
305
|
|
|
306
306
|
test('encode object (skip prototype)', async () => {
|
|
307
|
-
const obj = /** @type {Record<string, unknown>} */
|
|
307
|
+
const obj = /** @type {Record<string, unknown>} */ Object.create({ a: 2, x: 'xx' });
|
|
308
308
|
obj['a'] = 1;
|
|
309
309
|
obj['b'] = 'a';
|
|
310
310
|
obj['c'] = true;
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
import { jest } from '@jest/globals';
|
|
5
5
|
import { Readable, Transform } from 'node:stream';
|
|
6
6
|
import { decoder as decodeStream, decode as decodeAsync } from '../../dist/stream/index.js';
|
|
7
|
-
import { toBuffer } from '../.utils.
|
|
7
|
+
import { toBuffer } from '../.utils.ts';
|
|
8
8
|
import { UnexpectedEofError as UnexpectedEof } from '../../dist/helper/errors.js';
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -14,7 +14,7 @@ import { UnexpectedEofError as UnexpectedEof } from '../../dist/helper/errors.js
|
|
|
14
14
|
*/
|
|
15
15
|
async function decode(data) {
|
|
16
16
|
const readable = Readable.from([data], { objectMode: false });
|
|
17
|
-
return decodeAsync(/** @type {ReadableStream<Uint8Array>} */
|
|
17
|
+
return decodeAsync(/** @type {ReadableStream<Uint8Array>} */ Readable.toWeb(readable));
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
/**
|
|
@@ -456,7 +456,7 @@ test('decode object (empty key, optimized)', async () => {
|
|
|
456
456
|
});
|
|
457
457
|
|
|
458
458
|
test('decode stream', async () => {
|
|
459
|
-
const stream = Transform.fromWeb(/** @type {any} */
|
|
459
|
+
const stream = Transform.fromWeb(/** @type {any} */ decodeStream(), { objectMode: true });
|
|
460
460
|
// while decoding streaming, N will be regarded as a no-op, rather than an undefined value
|
|
461
461
|
const onData = jest.fn();
|
|
462
462
|
stream.on('data', onData);
|
|
@@ -499,7 +499,7 @@ test('decode bad stream [error]', async () => {
|
|
|
499
499
|
});
|
|
500
500
|
|
|
501
501
|
test('decode partial stream [error]', async () => {
|
|
502
|
-
const stream = Transform.fromWeb(/** @type {any} */
|
|
502
|
+
const stream = Transform.fromWeb(/** @type {any} */ decodeStream(), { objectMode: true });
|
|
503
503
|
// while decoding streaming, N will be regarded as a no-op, rather than an undefined value
|
|
504
504
|
const onData = jest.fn();
|
|
505
505
|
stream.on('data', onData);
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
import { buffer } from 'node:stream/consumers';
|
|
5
5
|
import { encode, encoder } from '../../dist/stream/index.js';
|
|
6
6
|
import { decode, encode as encodeRef } from '../../dist/index.js';
|
|
7
|
-
import { toArray } from '../.utils.
|
|
7
|
+
import { toArray } from '../.utils.ts';
|
|
8
8
|
import { Transform } from 'node:stream';
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -364,7 +364,7 @@ test('encode huge data (~128M)', async () => {
|
|
|
364
364
|
});
|
|
365
365
|
|
|
366
366
|
test('encode stream', async () => {
|
|
367
|
-
const stream = Transform.fromWeb(/** @type {any} */
|
|
367
|
+
const stream = Transform.fromWeb(/** @type {any} */ encoder(), { objectMode: true });
|
|
368
368
|
stream.write(undefined);
|
|
369
369
|
stream.write(true);
|
|
370
370
|
stream.write(false);
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|