mirror of
https://github.com/google/brotli.git
synced 2024-11-24 04:20:16 +00:00
internal change
PiperOrigin-RevId: 517214701
This commit is contained in:
parent
f29c44ed38
commit
745fd08ef2
@ -5,8 +5,6 @@
|
||||
*/
|
||||
import {BrotliDecode} from "./decode.js";
|
||||
import {makeTestData} from "./test_data.js";
|
||||
goog.require('goog.testing.asserts');
|
||||
const testSuite = goog.require('goog.testing.testSuite');
|
||||
|
||||
const CRC_64_POLY = new Uint32Array([0xD7870F42, 0xC96C5795]);
|
||||
|
||||
@ -55,18 +53,17 @@ function checkEntry(entry, data) {
|
||||
const expectedCrc = entry.substring(0, 16);
|
||||
const decompressed = BrotliDecode(data);
|
||||
const crc = calculateCrc64(decompressed);
|
||||
assertEquals(expectedCrc, crc);
|
||||
expect(expectedCrc).toEqual(crc);
|
||||
}
|
||||
|
||||
let allTests = {};
|
||||
const testData = makeTestData();
|
||||
for (let entry in testData) {
|
||||
describe("BundleTest", () => {
|
||||
const testData = makeTestData();
|
||||
for (let entry in testData) {
|
||||
if (!testData.hasOwnProperty(entry)) {
|
||||
continue;
|
||||
}
|
||||
const name = entry.substring(17);
|
||||
const data = testData[entry];
|
||||
allTests['test_' + name] = checkEntry.bind(null, entry, data);
|
||||
}
|
||||
|
||||
testSuite(allTests);
|
||||
it('test_' + name, checkEntry.bind(null, entry, data));
|
||||
}
|
||||
});
|
||||
|
@ -4,8 +4,6 @@
|
||||
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
|
||||
*/
|
||||
import {BrotliDecode} from "./decode.js";
|
||||
const testSuite = goog.require('goog.testing.testSuite');
|
||||
goog.require('goog.testing.asserts');
|
||||
|
||||
/**
|
||||
* NB: Use intermediate chunks to avoid "Maximum call stack size exceeded".
|
||||
@ -42,13 +40,13 @@ function checkSynth(compressed, expectSuccess, expectedOutput) {
|
||||
} catch (ex) {
|
||||
success = false;
|
||||
}
|
||||
assertEquals(expectSuccess, success);
|
||||
expect(expectSuccess).toEqual(success);
|
||||
if (expectSuccess) {
|
||||
assertEquals(expectedOutput, bytesToString(actual));
|
||||
expect(expectedOutput).toEqual(bytesToString(actual));
|
||||
}
|
||||
}
|
||||
|
||||
testSuite({
|
||||
const allTests = {
|
||||
/* GENERATED CODE START */
|
||||
|
||||
testAllTransforms10() {
|
||||
@ -2278,4 +2276,12 @@ testZeroCostLiterals() {
|
||||
},
|
||||
|
||||
/* GENERATED CODE END */
|
||||
};
|
||||
|
||||
describe("DecodeSynthTest", () => {
|
||||
const testNames = Object.keys(allTests);
|
||||
for (let i = 0; i < testNames.length; ++i) {
|
||||
const testName = testNames[i];
|
||||
it(testName, allTests[testName]);
|
||||
}
|
||||
});
|
||||
|
@ -4,8 +4,6 @@
|
||||
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
|
||||
*/
|
||||
import {BrotliDecode} from "./decode.js";
|
||||
const testSuite = goog.require('goog.testing.testSuite');
|
||||
goog.require('goog.testing.asserts');
|
||||
|
||||
/**
|
||||
* @param {!Int8Array} bytes
|
||||
@ -25,20 +23,20 @@ function stringToBytes(str) {
|
||||
return out;
|
||||
}
|
||||
|
||||
testSuite({
|
||||
testMetadata() {
|
||||
assertEquals(
|
||||
'', bytesToString(BrotliDecode(Int8Array.from([1, 11, 0, 42, 3]))));
|
||||
},
|
||||
describe('DecodeTest', () => {
|
||||
it('testMetadata', () => {
|
||||
expect('').toEqual(
|
||||
bytesToString(BrotliDecode(Int8Array.from([1, 11, 0, 42, 3]))));
|
||||
});
|
||||
|
||||
testCompoundDictionary() {
|
||||
it('testCompoundDictionary', () => {
|
||||
const txt = 'kot lomom kolol slona\n';
|
||||
const dictionary = stringToBytes(txt);
|
||||
const compressed =
|
||||
[0xa1, 0xa8, 0x00, 0xc0, 0x2f, 0x01, 0x10, 0xc4, 0x44, 0x09, 0x00];
|
||||
assertEquals(txt.length, compressed.length * 2);
|
||||
expect(txt.length).toEqual(compressed.length * 2);
|
||||
const options = {'customDictionary': dictionary};
|
||||
assertEquals(
|
||||
txt, bytesToString(BrotliDecode(Int8Array.from(compressed), options)));
|
||||
}
|
||||
expect(txt).toEqual(
|
||||
bytesToString(BrotliDecode(Int8Array.from(compressed), options)));
|
||||
});
|
||||
});
|
||||
|
Loading…
Reference in New Issue
Block a user