travel/admin/node_modules/object-hash/test/blob.js

42 lines
1.0 KiB
JavaScript
Raw Normal View History

2024-06-24 11:28:18 +08:00
'use strict';
var assert = require('assert');
var hash = require('../index');
if (typeof Blob !== 'undefined') {
describe('hash()ing Blob objects', function() {
var blob;
before('create blob', function() {
try {
blob = new Blob(['ABC']);
} catch(e) {
// https://github.com/ariya/phantomjs/issues/11013
if (!e.message.match(/'\[object BlobConstructor\]' is not a constructor/)) {
throw e;
}
var builder = new WebKitBlobBuilder();
builder.append('ABC');
blob = builder.getBlob();
}
});
it('should throw when trying to hash a blob', function() {
assert.throws(function() {
hash(blob);
}, /not supported/);
assert.throws(function() {
hash({abcdef: blob});
}, /not supported/);
});
it('should not throw when trying to hash a blob with ignoreUnknown', function() {
var opt = {ignoreUnknown: true};
assert.ok(validSha1.test(hash(blob, opt)), 'ignore Blob');
assert.ok(validSha1.test(hash({abcdef: blob}, opt)), 'ignore Blob');
});
});
}