diff options
Diffstat (limited to 'node_modules/crypto-browserify/test/aes.js')
-rw-r--r-- | node_modules/crypto-browserify/test/aes.js | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/node_modules/crypto-browserify/test/aes.js b/node_modules/crypto-browserify/test/aes.js new file mode 100644 index 000000000..916a0192d --- /dev/null +++ b/node_modules/crypto-browserify/test/aes.js @@ -0,0 +1,49 @@ +var test = require('tape') +var crypto = require('browserify-cipher/browser') +var randomBytes = require('pseudorandombytes') + +function runIt (i) { + crypto.listCiphers().forEach(function (cipher) { + test('run: ' + i, function (t) { + t.test('ciphers: ' + cipher, function (t) { + t.plan(1) + var data = randomBytes(562) + var password = randomBytes(20) + var crypter = crypto.createCipher(cipher, password) + var decrypter = crypto.createDecipher(cipher, password) + var out = [] + out.push(decrypter.update(crypter.update(data))) + out.push(decrypter.update(crypter.final())) + if (cipher.indexOf('gcm') > -1) { + decrypter.setAuthTag(crypter.getAuthTag()) + } + out.push(decrypter.final()) + t.equals(data.toString('hex'), Buffer.concat(out).toString('hex')) + }) + }) + }) + if (i < 4) { + setTimeout(runIt, 0, i + 1) + } +} +runIt(1) +test('getCiphers', function (t) { + t.plan(1) + t.ok(crypto.getCiphers().length, 'get ciphers returns an array') +}) + +test('through crypto browserify works', function (t) { + t.plan(2) + var crypto = require('../') + var cipher = 'aes-128-ctr' + var data = randomBytes(562) + var password = randomBytes(20) + var crypter = crypto.createCipher(cipher, password) + var decrypter = crypto.createDecipher(cipher, password) + var out = [] + out.push(decrypter.update(crypter.update(data))) + out.push(decrypter.update(crypter.final())) + out.push(decrypter.final()) + t.equals(data.toString('hex'), Buffer.concat(out).toString('hex')) + t.ok(crypto.getCiphers().length, 'get ciphers returns an array') +}) |