mirror of
https://github.com/demostf/demo.js
synced 2026-06-04 09:04:13 +02:00
better transcode test
This commit is contained in:
parent
c9c764aad0
commit
8ee53bf92e
1 changed files with 9 additions and 6 deletions
|
|
@ -7,10 +7,15 @@ import {Parser} from '../../Parser';
|
||||||
import {Analyser} from '../../Analyser';
|
import {Analyser} from '../../Analyser';
|
||||||
|
|
||||||
function testDemo(name: string) {
|
function testDemo(name: string) {
|
||||||
const target = JSON.parse(readFileSync(`${__dirname}/../data/${name}.json`, 'utf8'));
|
|
||||||
const decodeStream = new BitStream(
|
const decodeStream = new BitStream(
|
||||||
readFileSync(`${__dirname}/../data/${name}.dem`).buffer as ArrayBuffer
|
readFileSync(`${__dirname}/../data/${name}.dem`).buffer as ArrayBuffer
|
||||||
);
|
);
|
||||||
|
|
||||||
|
const parser = new Parser(decodeStream);
|
||||||
|
const analyser = new Analyser(parser);
|
||||||
|
const original = analyser.getBody().getState();
|
||||||
|
decodeStream.index = 0;
|
||||||
|
|
||||||
const encodeStream = new DynamicBitStream(32 * 1024 * 1024);
|
const encodeStream = new DynamicBitStream(32 * 1024 * 1024);
|
||||||
|
|
||||||
const transformer = new Transformer(decodeStream, encodeStream);
|
const transformer = new Transformer(decodeStream, encodeStream);
|
||||||
|
|
@ -19,17 +24,15 @@ function testDemo(name: string) {
|
||||||
const encodedLength = encodeStream.index;
|
const encodedLength = encodeStream.index;
|
||||||
encodeStream.index = 0;
|
encodeStream.index = 0;
|
||||||
|
|
||||||
console.log('start reparse');
|
|
||||||
|
|
||||||
const reParser = new Parser(encodeStream);
|
const reParser = new Parser(encodeStream);
|
||||||
const analyser = new Analyser(reParser);
|
const reAnalyser = new Analyser(reParser);
|
||||||
const parsed = analyser.getBody().getState();
|
const parsed = reAnalyser.getBody().getState();
|
||||||
|
|
||||||
const reParsedLength = encodeStream.index;
|
const reParsedLength = encodeStream.index;
|
||||||
|
|
||||||
assert.equal(reParsedLength, encodedLength, 'Unexpected number of bits used when parsing encoding stream');
|
assert.equal(reParsedLength, encodedLength, 'Unexpected number of bits used when parsing encoding stream');
|
||||||
|
|
||||||
assert.deepEqual(JSON.parse(JSON.stringify(parsed)), target);
|
assert.deepEqual(JSON.parse(JSON.stringify(parsed)), original);
|
||||||
}
|
}
|
||||||
|
|
||||||
suite('Transcode demo', () => {
|
suite('Transcode demo', () => {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue