Blame view

node_modules/object-hash/test/blob.js 1.04 KB
ce4c83ff   wxy   初始提交
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
  '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');
    });
  });
  }