[Pkg-javascript-commits] [node-browserify-aes] 31/43: tests: !node10 is now implied

Bastien Roucariès rouca at moszumanska.debian.org
Thu Sep 7 14:42:00 UTC 2017


This is an automated email from the git hooks/post-receive script.

rouca pushed a commit to branch master
in repository node-browserify-aes.

commit 3bc9da2957ed7bf7a30c3c3e3db4e612367cc810
Author: Daniel Cousens <github at dcousens.com>
Date:   Fri Jun 16 13:29:38 2017 +1000

    tests: !node10 is now implied
---
 package.json  |   2 +-
 test/index.js | 332 +++++++++++++++++++++++++++++-----------------------------
 2 files changed, 166 insertions(+), 168 deletions(-)

diff --git a/package.json b/package.json
index e08a3d3..5c4ccfb 100644
--- a/package.json
+++ b/package.json
@@ -28,7 +28,7 @@
   },
   "homepage": "https://github.com/crypto-browserify/browserify-aes",
   "dependencies": {
-    "buffer-xor": "^1.0.2",
+    "buffer-xor": "^1.0.3",
     "cipher-base": "^1.0.0",
     "create-hash": "^1.1.0",
     "evp_bytestokey": "^1.0.0",
diff --git a/test/index.js b/test/index.js
index 4c9707d..eaf5f13 100644
--- a/test/index.js
+++ b/test/index.js
@@ -247,178 +247,176 @@ fixtures.forEach(function (fixture, i) {
   })
 })
 
-if (!isNode10()) {
-  test('node tests', function (t) {
-    var TEST_CASES = [
-      { algo: 'aes-128-gcm',
-        key: '6970787039613669314d623455536234',
-        iv: '583673497131313748307652',
-        plain: 'Hello World!',
-        ct: '4BE13896F64DFA2C2D0F2C76',
-        tag: '272B422F62EB545EAA15B5FF84092447',
-        tampered: false },
-      { algo: 'aes-128-gcm',
-        key: '6970787039613669314d623455536234',
-        iv: '583673497131313748307652',
-        plain: 'Hello World!',
-        ct: '4BE13896F64DFA2C2D0F2C76',
-        aad: '000000FF',
-        tag: 'BA2479F66275665A88CB7B15F43EB005',
-        tampered: false },
-      { algo: 'aes-128-gcm',
-        key: '6970787039613669314d623455536234',
-        iv: '583673497131313748307652',
-        plain: 'Hello World!',
-        ct: '4BE13596F64DFA2C2D0FAC76',
-        tag: '272B422F62EB545EAA15B5FF84092447',
-        tampered: true },
-      { algo: 'aes-256-gcm',
-        key: '337a54767a7233703637564336316a6d56353472495975313534357834546c59',
-        iv: '36306950306836764a6f4561',
-        plain: 'Hello node.js world!',
-        ct: '58E62CFE7B1D274111A82267EBB93866E72B6C2A',
-        tag: '9BB44F663BADABACAE9720881FB1EC7A',
-        tampered: false },
-      { algo: 'aes-256-gcm',
-        key: '337a54767a7233703637564336316a6d56353472495975313534357834546c59',
-        iv: '36306950306836764a6f4561',
-        plain: 'Hello node.js world!',
-        ct: '58E62CFF7B1D274011A82267EBB93866E72B6C2B',
-        tag: '9BB44F663BADABACAE9720881FB1EC7A',
-        tampered: true },
-      { algo: 'aes-192-gcm',
-        key: '1ed2233fa2223ef5d7df08546049406c7305220bca40d4c9',
-        iv: '0e1791e9db3bd21a9122c416',
-        plain: 'Hello node.js world!',
-        password: 'very bad password',
-        aad: '63616c76696e',
-        ct: 'DDA53A4059AA17B88756984995F7BBA3C636CC44',
-        tag: 'D2A35E5C611E5E3D2258360241C5B045',
-        tampered: false }
-    ]
-
-    var ciphers = Object.keys(modes)
-    function testIt (i) {
-      t.test('test case ' + i, function (t) {
-        var test = TEST_CASES[i]
-
-        if (ciphers.indexOf(test.algo) === -1) {
-          console.log('skipping unsupported ' + test.algo + ' test')
-          return
-        }
+test('node tests', function (t) {
+  var TEST_CASES = [
+    { algo: 'aes-128-gcm',
+      key: '6970787039613669314d623455536234',
+      iv: '583673497131313748307652',
+      plain: 'Hello World!',
+      ct: '4BE13896F64DFA2C2D0F2C76',
+      tag: '272B422F62EB545EAA15B5FF84092447',
+      tampered: false },
+    { algo: 'aes-128-gcm',
+      key: '6970787039613669314d623455536234',
+      iv: '583673497131313748307652',
+      plain: 'Hello World!',
+      ct: '4BE13896F64DFA2C2D0F2C76',
+      aad: '000000FF',
+      tag: 'BA2479F66275665A88CB7B15F43EB005',
+      tampered: false },
+    { algo: 'aes-128-gcm',
+      key: '6970787039613669314d623455536234',
+      iv: '583673497131313748307652',
+      plain: 'Hello World!',
+      ct: '4BE13596F64DFA2C2D0FAC76',
+      tag: '272B422F62EB545EAA15B5FF84092447',
+      tampered: true },
+    { algo: 'aes-256-gcm',
+      key: '337a54767a7233703637564336316a6d56353472495975313534357834546c59',
+      iv: '36306950306836764a6f4561',
+      plain: 'Hello node.js world!',
+      ct: '58E62CFE7B1D274111A82267EBB93866E72B6C2A',
+      tag: '9BB44F663BADABACAE9720881FB1EC7A',
+      tampered: false },
+    { algo: 'aes-256-gcm',
+      key: '337a54767a7233703637564336316a6d56353472495975313534357834546c59',
+      iv: '36306950306836764a6f4561',
+      plain: 'Hello node.js world!',
+      ct: '58E62CFF7B1D274011A82267EBB93866E72B6C2B',
+      tag: '9BB44F663BADABACAE9720881FB1EC7A',
+      tampered: true },
+    { algo: 'aes-192-gcm',
+      key: '1ed2233fa2223ef5d7df08546049406c7305220bca40d4c9',
+      iv: '0e1791e9db3bd21a9122c416',
+      plain: 'Hello node.js world!',
+      password: 'very bad password',
+      aad: '63616c76696e',
+      ct: 'DDA53A4059AA17B88756984995F7BBA3C636CC44',
+      tag: 'D2A35E5C611E5E3D2258360241C5B045',
+      tampered: false }
+  ]
+
+  var ciphers = Object.keys(modes)
+  function testIt (i) {
+    t.test('test case ' + i, function (t) {
+      var test = TEST_CASES[i]
+
+      if (ciphers.indexOf(test.algo) === -1) {
+        console.log('skipping unsupported ' + test.algo + ' test')
+        return
+      }
+
+      (function () {
+        var encrypt = crypto.createCipheriv(test.algo,
+          Buffer.from(test.key, 'hex'), Buffer.from(test.iv, 'hex'))
+        if (test.aad) encrypt.setAAD(Buffer.from(test.aad, 'hex'))
 
-        (function () {
-          var encrypt = crypto.createCipheriv(test.algo,
-            Buffer.from(test.key, 'hex'), Buffer.from(test.iv, 'hex'))
-          if (test.aad) encrypt.setAAD(Buffer.from(test.aad, 'hex'))
-
-          var hex = encrypt.update(test.plain, 'ascii', 'hex')
-          hex += encrypt.final('hex')
-          var authTag = encrypt.getAuthTag()
-
-          // only test basic encryption run if output is marked as tampered.
-          if (!test.tampered) {
-            t.equal(hex.toUpperCase(), test.ct)
-            t.equal(authTag.toString('hex').toUpperCase(), test.tag)
-          }
-        })()
-
-        ;(function () {
-          var decrypt = crypto.createDecipheriv(test.algo,
-            Buffer.from(test.key, 'hex'), Buffer.from(test.iv, 'hex'))
-          decrypt.setAuthTag(Buffer.from(test.tag, 'hex'))
-          if (test.aad) decrypt.setAAD(Buffer.from(test.aad, 'hex'))
-          var msg = decrypt.update(test.ct, 'hex', 'ascii')
-          if (!test.tampered) {
-            msg += decrypt.final('ascii')
-            t.equal(msg, test.plain)
-          } else {
-            // assert that final throws if input data could not be verified!
-            t.throws(function () { decrypt.final('ascii') }, / auth/)
-          }
-        })()
-
-        ;(function () {
-          if (!test.password) return
-          var encrypt = crypto.createCipher(test.algo, test.password)
-          if (test.aad) encrypt.setAAD(Buffer.from(test.aad, 'hex'))
-          var hex = encrypt.update(test.plain, 'ascii', 'hex')
-          hex += encrypt.final('hex')
-          var authTag = encrypt.getAuthTag()
-          // only test basic encryption run if output is marked as tampered.
-          if (!test.tampered) {
-            t.equal(hex.toUpperCase(), test.ct)
-            t.equal(authTag.toString('hex').toUpperCase(), test.tag)
-          }
-        })()
-
-        ;(function () {
-          if (!test.password) return
-          var decrypt = crypto.createDecipher(test.algo, test.password)
-          decrypt.setAuthTag(Buffer.from(test.tag, 'hex'))
-          if (test.aad) decrypt.setAAD(Buffer.from(test.aad, 'hex'))
-          var msg = decrypt.update(test.ct, 'hex', 'ascii')
-          if (!test.tampered) {
-            msg += decrypt.final('ascii')
-            t.equal(msg, test.plain)
-          } else {
-            // assert that final throws if input data could not be verified!
-            t.throws(function () { decrypt.final('ascii') }, / auth/)
-          }
-        })()
-
-        // after normal operation, test some incorrect ways of calling the API:
-        // it's most certainly enough to run these tests with one algorithm only.
-
-        if (i > 0) {
-          t.end()
-          return
+        var hex = encrypt.update(test.plain, 'ascii', 'hex')
+        hex += encrypt.final('hex')
+        var authTag = encrypt.getAuthTag()
+
+        // only test basic encryption run if output is marked as tampered.
+        if (!test.tampered) {
+          t.equal(hex.toUpperCase(), test.ct)
+          t.equal(authTag.toString('hex').toUpperCase(), test.tag)
+        }
+      })()
+
+      ;(function () {
+        var decrypt = crypto.createDecipheriv(test.algo,
+          Buffer.from(test.key, 'hex'), Buffer.from(test.iv, 'hex'))
+        decrypt.setAuthTag(Buffer.from(test.tag, 'hex'))
+        if (test.aad) decrypt.setAAD(Buffer.from(test.aad, 'hex'))
+        var msg = decrypt.update(test.ct, 'hex', 'ascii')
+        if (!test.tampered) {
+          msg += decrypt.final('ascii')
+          t.equal(msg, test.plain)
+        } else {
+          // assert that final throws if input data could not be verified!
+          t.throws(function () { decrypt.final('ascii') }, / auth/)
         }
+      })()
+
+      ;(function () {
+        if (!test.password) return
+        var encrypt = crypto.createCipher(test.algo, test.password)
+        if (test.aad) encrypt.setAAD(Buffer.from(test.aad, 'hex'))
+        var hex = encrypt.update(test.plain, 'ascii', 'hex')
+        hex += encrypt.final('hex')
+        var authTag = encrypt.getAuthTag()
+        // only test basic encryption run if output is marked as tampered.
+        if (!test.tampered) {
+          t.equal(hex.toUpperCase(), test.ct)
+          t.equal(authTag.toString('hex').toUpperCase(), test.tag)
+        }
+      })()
+
+      ;(function () {
+        if (!test.password) return
+        var decrypt = crypto.createDecipher(test.algo, test.password)
+        decrypt.setAuthTag(Buffer.from(test.tag, 'hex'))
+        if (test.aad) decrypt.setAAD(Buffer.from(test.aad, 'hex'))
+        var msg = decrypt.update(test.ct, 'hex', 'ascii')
+        if (!test.tampered) {
+          msg += decrypt.final('ascii')
+          t.equal(msg, test.plain)
+        } else {
+          // assert that final throws if input data could not be verified!
+          t.throws(function () { decrypt.final('ascii') }, / auth/)
+        }
+      })()
 
-        (function () {
-          // non-authenticating mode:
-          var encrypt = crypto.createCipheriv('aes-128-cbc',
-            'ipxp9a6i1Mb4USb4', '6fKjEjR3Vl30EUYC')
-          encrypt.update('blah', 'ascii')
-          encrypt.final()
-          t.throws(function () { encrypt.getAuthTag() })
-          t.throws(function () {
-            encrypt.setAAD(Buffer.from('123', 'ascii'))
-          })
-        })()
-
-        ;(function () {
-          // trying to get tag before inputting all data:
-          var encrypt = crypto.createCipheriv(test.algo,
-            Buffer.from(test.key, 'hex'), Buffer.from(test.iv, 'hex'))
-          encrypt.update('blah', 'ascii')
-          t.throws(function () { encrypt.getAuthTag() }, / state/)
-        })()
-
-        ;(function () {
-          // trying to set tag on encryption object:
-          var encrypt = crypto.createCipheriv(test.algo,
-            Buffer.from(test.key, 'hex'), Buffer.from(test.iv, 'hex'))
-          t.throws(function () {
-            encrypt.setAuthTag(Buffer.from(test.tag, 'hex'))
-          }, / state/)
-        })()
-
-        ;(function () {
-          // trying to read tag from decryption object:
-          var decrypt = crypto.createDecipheriv(test.algo,
-            Buffer.from(test.key, 'hex'), Buffer.from(test.iv, 'hex'))
-          t.throws(function () { decrypt.getAuthTag() }, / state/)
-        })()
+      // after normal operation, test some incorrect ways of calling the API:
+      // it's most certainly enough to run these tests with one algorithm only.
+
+      if (i > 0) {
         t.end()
-      })
-    }
+        return
+      }
 
-    for (var i in TEST_CASES) {
-      testIt(i)
-    }
-  })
-}
+      (function () {
+        // non-authenticating mode:
+        var encrypt = crypto.createCipheriv('aes-128-cbc',
+          'ipxp9a6i1Mb4USb4', '6fKjEjR3Vl30EUYC')
+        encrypt.update('blah', 'ascii')
+        encrypt.final()
+        t.throws(function () { encrypt.getAuthTag() })
+        t.throws(function () {
+          encrypt.setAAD(Buffer.from('123', 'ascii'))
+        })
+      })()
+
+      ;(function () {
+        // trying to get tag before inputting all data:
+        var encrypt = crypto.createCipheriv(test.algo,
+          Buffer.from(test.key, 'hex'), Buffer.from(test.iv, 'hex'))
+        encrypt.update('blah', 'ascii')
+        t.throws(function () { encrypt.getAuthTag() }, / state/)
+      })()
+
+      ;(function () {
+        // trying to set tag on encryption object:
+        var encrypt = crypto.createCipheriv(test.algo,
+          Buffer.from(test.key, 'hex'), Buffer.from(test.iv, 'hex'))
+        t.throws(function () {
+          encrypt.setAuthTag(Buffer.from(test.tag, 'hex'))
+        }, / state/)
+      })()
+
+      ;(function () {
+        // trying to read tag from decryption object:
+        var decrypt = crypto.createDecipheriv(test.algo,
+          Buffer.from(test.key, 'hex'), Buffer.from(test.iv, 'hex'))
+        t.throws(function () { decrypt.getAuthTag() }, / state/)
+      })()
+      t.end()
+    })
+  }
+
+  for (var i in TEST_CASES) {
+    testIt(i)
+  }
+})
 
 function corectPaddingWords (padding, result) {
   test('correct padding ' + padding.toString('hex'), function (t) {

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-javascript/node-browserify-aes.git



More information about the Pkg-javascript-commits mailing list