pako/test/inflate.js

143 wiersze
3.4 KiB
JavaScript
Czysty Zwykły widok Historia

2014-02-21 10:48:40 +00:00
/*global describe, it*/
'use strict';
var helpers = require('./helpers');
var testInflate = helpers.testInflate;
var pako = require('../index');
var samples = helpers.loadSamples();
2014-03-11 22:49:19 +00:00
describe('Inflate defaults', function () {
2014-02-21 10:48:40 +00:00
it('inflate, no options', function(done) {
testInflate(samples, {}, done);
});
it('inflate raw, no options', function(done) {
testInflate(samples, { raw: true }, done);
});
});
2014-03-11 22:49:19 +00:00
describe('Inflate ungzip', function () {
2014-02-21 10:48:40 +00:00
var orig = samples.lorem_cat;
var gzipped = pako.gzip(samples.lorem_cat);
2014-03-11 22:49:19 +00:00
it.skip('ungzip with autodetect', function(done) {
2014-02-21 10:48:40 +00:00
done(helpers.cmp(orig, pako.inflate(gzipped).result));
});
2014-03-11 22:49:19 +00:00
it.skip('ungzip with method set directly', function(done) {
2014-02-21 10:48:40 +00:00
done(helpers.cmp(orig, pako.inflate(gzipped, { windowBits: 15 + 16 }).result));
});
});
2014-03-11 22:49:19 +00:00
describe('Inflate levels', function () {
2014-02-21 10:48:40 +00:00
it('level 9', function(done) {
testInflate(samples, { level: 9 }, done);
});
it('level 8', function(done) {
testInflate(samples, { level: 8 }, done);
});
it('level 7', function(done) {
testInflate(samples, { level: 7 }, done);
});
it('level 6', function(done) {
testInflate(samples, { level: 6 }, done);
});
it('level 5', function(done) {
testInflate(samples, { level: 5 }, done);
});
it('level 4', function(done) {
testInflate(samples, { level: 4 }, done);
});
it('level 3', function(done) {
testInflate(samples, { level: 3 }, done);
});
it('level 2', function(done) {
testInflate(samples, { level: 2 }, done);
});
it('level 1', function(done) {
testInflate(samples, { level: 1 }, done);
});
2014-03-11 22:49:19 +00:00
it.skip('level 0', function(done) {
2014-02-21 10:48:40 +00:00
testInflate(samples, { level: 0 }, done);
});
});
2014-03-11 22:49:19 +00:00
describe('Inflate windowBits', function () {
2014-02-21 10:48:40 +00:00
it('windowBits 15', function(done) {
testInflate(samples, { windowBits: 15 }, done);
});
it('windowBits 14', function(done) {
testInflate(samples, { windowBits: 14 }, done);
});
it('windowBits 13', function(done) {
testInflate(samples, { windowBits: 13 }, done);
});
it('windowBits 12', function(done) {
testInflate(samples, { windowBits: 12 }, done);
});
it('windowBits 11', function(done) {
testInflate(samples, { windowBits: 11 }, done);
});
it('windowBits 10', function(done) {
testInflate(samples, { windowBits: 10 }, done);
});
it('windowBits 9', function(done) {
testInflate(samples, { windowBits: 9 }, done);
});
2014-03-11 22:49:19 +00:00
it.skip('windowBits 8', function(done) {
2014-02-21 10:48:40 +00:00
testInflate(samples, { windowBits: 8 }, done);
});
});
2014-03-11 22:49:19 +00:00
describe('Inflate strategy', function () {
2014-02-21 10:48:40 +00:00
it('Z_DEFAULT_STRATEGY', function(done) {
testInflate(samples, { strategy: 0 }, done);
});
it('Z_FILTERED', function(done) {
testInflate(samples, { strategy: 1 }, done);
});
it('Z_HUFFMAN_ONLY', function(done) {
testInflate(samples, { strategy: 2 }, done);
});
it('Z_RLE', function(done) {
testInflate(samples, { strategy: 3 }, done);
});
it.skip('Z_FIXED', function(done) {
testInflate(samples, { strategy: 4 }, done);
});
});
2014-03-11 22:49:19 +00:00
describe('Inflate RAW', function () {
2014-02-21 10:48:40 +00:00
// Since difference is only in rwapper, test for store/fast/slow methods are enougth
it('level 4', function(done) {
testInflate(samples, { level: 4, raw: true }, done);
});
it('level 1', function(done) {
testInflate(samples, { level: 1, raw: true }, done);
});
2014-03-11 22:49:19 +00:00
it.skip('level 0', function(done) {
2014-02-21 10:48:40 +00:00
testInflate(samples, { level: 0, raw: true }, done);
});
});