Skip to content

Commit

Permalink
add tests for CRC fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
kevincharm committed May 25, 2018
1 parent beff650 commit f5310b5
Show file tree
Hide file tree
Showing 3 changed files with 44 additions and 0 deletions.
Binary file added test/crc/bad_crc.zip
Binary file not shown.
Binary file added test/crc/good_crc.zip
Binary file not shown.
44 changes: 44 additions & 0 deletions test/crc/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
;(function () {
var assert = require('assert');
var path = require('path');
var Zip = require('../../adm-zip');

testGoodCrc();
testBadCrc();

// Good CRC
function testGoodCrc() {
var goodZip = new Zip(path.join(__dirname, 'good_crc.zip'));
var entries = goodZip.getEntries();
assert(entries.length === 1, 'Good CRC: Test archive contains exactly 1 file');

var testFile = entries.filter(function (entry) {
return entry.entryName === 'lorem_ipsum.txt';
});
assert(testFile.length === 1, 'Good CRC: lorem_ipsum.txt file exists as archive entry');

var testFileEntryName = testFile[0].entryName;
goodZip.readAsTextAsync(testFileEntryName, function (data, err) {
assert(!err, 'Good CRC: error object not present');
assert(data && data.length, 'Good CRC: buffer not empty');
});
}

// Bad CRC
function testBadCrc() {
var badZip = new Zip(path.join(__dirname, 'bad_crc.zip'));
var entries = badZip.getEntries();
assert(entries.length === 1, 'Bad CRC: Test archive contains exactly 1 file');

var testFile = entries.filter(function (entry) {
return entry.entryName === 'lorem_ipsum.txt';
});
assert(testFile.length === 1, 'Bad CRC: lorem_ipsum.txt file exists as archive entry');

var testFileEntryName = testFile[0].entryName;
badZip.readAsTextAsync(testFileEntryName, function (data, err) {
assert(data && data.length, 'Bad CRC: buffer not empty');
assert(err, 'Bad CRC: error object present');
});
}
})();

0 comments on commit f5310b5

Please sign in to comment.