summaryrefslogtreecommitdiff
path: root/test/parallel/test-crypto-classes.js
diff options
context:
space:
mode:
authorBryan English <bryan@bryanenglish.com>2016-08-19 14:45:20 -0700
committerBryan English <bryan@bryanenglish.com>2017-09-27 13:41:17 -0700
commit611a648c668ed3a8f80837dfb46043c50848fee3 (patch)
tree4d80202cf1648636f80ce970c74714e74adb84ec /test/parallel/test-crypto-classes.js
parent93985ef83cf3b7e10c6199776a20b5ea3f93bf4d (diff)
downloadandroid-node-v8-611a648c668ed3a8f80837dfb46043c50848fee3.tar.gz
android-node-v8-611a648c668ed3a8f80837dfb46043c50848fee3.tar.bz2
android-node-v8-611a648c668ed3a8f80837dfb46043c50848fee3.zip
test: crypto createClass instanceof Class
The crypto classes are also exposed as createClass for each class. This tests that each of them returns an instance of the class in question. PR-URL: https://github.com/nodejs/node/pull/8188 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
Diffstat (limited to 'test/parallel/test-crypto-classes.js')
-rw-r--r--test/parallel/test-crypto-classes.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/test/parallel/test-crypto-classes.js b/test/parallel/test-crypto-classes.js
new file mode 100644
index 0000000000..ed6bfd76c1
--- /dev/null
+++ b/test/parallel/test-crypto-classes.js
@@ -0,0 +1,31 @@
+'use strict';
+const common = require('../common');
+const assert = require('assert');
+
+if (!common.hasCrypto) {
+ common.skip('missing crypto');
+ return;
+}
+const crypto = require('crypto');
+
+// 'ClassName' : ['args', 'for', 'constructor']
+const TEST_CASES = {
+ 'Hash': ['sha1'],
+ 'Hmac': ['sha1', 'Node'],
+ 'Cipheriv': ['des-ede3-cbc', '0123456789abcd0123456789', '12345678'],
+ 'Decipheriv': ['des-ede3-cbc', '0123456789abcd0123456789', '12345678'],
+ 'Sign': ['RSA-SHA1'],
+ 'Verify': ['RSA-SHA1'],
+ 'DiffieHellman': [1024],
+ 'DiffieHellmanGroup': ['modp5'],
+ 'Credentials': []
+};
+
+if (!common.hasFipsCrypto) {
+ TEST_CASES.Cipher = ['aes192', 'secret'];
+ TEST_CASES.Decipher = ['aes192', 'secret'];
+}
+
+for (const [clazz, args] of Object.entries(TEST_CASES)) {
+ assert(crypto[`create${clazz}`](...args) instanceof crypto[clazz]);
+}