diff options
author | kumavis <kumavis@users.noreply.github.com> | 2016-11-18 06:27:34 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-11-18 06:27:34 +0800 |
commit | 6400eb8453c173e04e59d7990bd2c79afb3493be (patch) | |
tree | ecb311d43d0f77d5f5f0e82a0014a09c6381f0ef /test/integration | |
parent | 115fdc36fefd33e4bf4a9e551dd6267d3d75f2c5 (diff) | |
parent | 4352c7031afb6f9a175b29d0addeb7ea48345676 (diff) | |
download | tangerine-wallet-browser-6400eb8453c173e04e59d7990bd2c79afb3493be.tar tangerine-wallet-browser-6400eb8453c173e04e59d7990bd2c79afb3493be.tar.gz tangerine-wallet-browser-6400eb8453c173e04e59d7990bd2c79afb3493be.tar.bz2 tangerine-wallet-browser-6400eb8453c173e04e59d7990bd2c79afb3493be.tar.lz tangerine-wallet-browser-6400eb8453c173e04e59d7990bd2c79afb3493be.tar.xz tangerine-wallet-browser-6400eb8453c173e04e59d7990bd2c79afb3493be.tar.zst tangerine-wallet-browser-6400eb8453c173e04e59d7990bd2c79afb3493be.zip |
Merge pull request #816 from MetaMask/i328-MultiVault
Multi vault to Dev Branch
Diffstat (limited to 'test/integration')
-rw-r--r-- | test/integration/index.html | 2 | ||||
-rw-r--r-- | test/integration/index.js | 21 | ||||
-rw-r--r-- | test/integration/lib/encryptor-test.js | 67 | ||||
-rw-r--r-- | test/integration/lib/first-time.js | 15 | ||||
-rw-r--r-- | test/integration/tests.js | 24 |
5 files changed, 104 insertions, 25 deletions
diff --git a/test/integration/index.html b/test/integration/index.html index 6de40b046..ad4b4eb14 100644 --- a/test/integration/index.html +++ b/test/integration/index.html @@ -12,7 +12,7 @@ <script src="https://code.jquery.com/qunit/qunit-2.0.0.js"></script> <script src="./jquery-3.1.0.min.js"></script> <script src="helpers.js"></script> - <script src="tests.js"></script> + <script src="bundle.js"></script> <script src="/testem.js"></script> <iframe src="/development/index.html" height="500px" width="360px"> diff --git a/test/integration/index.js b/test/integration/index.js new file mode 100644 index 000000000..ff6d1baf8 --- /dev/null +++ b/test/integration/index.js @@ -0,0 +1,21 @@ +var fs = require('fs') +var path = require('path') +var browserify = require('browserify'); +var tests = fs.readdirSync(path.join(__dirname, 'lib')) +var bundlePath = path.join(__dirname, 'bundle.js') + +var b = browserify(); + +// Remove old bundle +try { + fs.unlinkSync(bundlePath) +} catch (e) {} + +var writeStream = fs.createWriteStream(bundlePath) + +tests.forEach(function(fileName) { + b.add(path.join(__dirname, 'lib', fileName)) +}) + +b.bundle().pipe(writeStream); + diff --git a/test/integration/lib/encryptor-test.js b/test/integration/lib/encryptor-test.js new file mode 100644 index 000000000..d42608152 --- /dev/null +++ b/test/integration/lib/encryptor-test.js @@ -0,0 +1,67 @@ +var encryptor = require('../../../app/scripts/lib/encryptor') + +QUnit.test('encryptor:serializeBufferForStorage', function (assert) { + assert.expect(1) + var buf = new Buffer(2) + buf[0] = 16 + buf[1] = 1 + + var output = encryptor.serializeBufferForStorage(buf) + + var expect = '0x1001' + assert.equal(expect, output) +}) + +QUnit.test('encryptor:serializeBufferFromStorage', function (assert) { + assert.expect(2) + var input = '0x1001' + var output = encryptor.serializeBufferFromStorage(input) + + assert.equal(output[0], 16) + assert.equal(output[1], 1) +}) + +QUnit.test('encryptor:encrypt & decrypt', function(assert) { + var done = assert.async(); + var password, data, encrypted + + password = 'a sample passw0rd' + data = { foo: 'data to encrypt' } + + encryptor.encrypt(password, data) + .then(function(encryptedStr) { + assert.equal(typeof encryptedStr, 'string', 'returns a string') + return encryptor.decrypt(password, encryptedStr) + }) + .then(function (decryptedObj) { + assert.deepEqual(decryptedObj, data, 'decrypted what was encrypted') + done() + }) + .catch(function(reason) { + assert.ifError(reason, 'threw an error') + done(reason) + }) + +}) + +QUnit.test('encryptor:encrypt & decrypt with wrong password', function(assert) { + var done = assert.async(); + var password, data, encrypted, wrongPassword + + password = 'a sample passw0rd' + wrongPassword = 'a wrong password' + data = { foo: 'data to encrypt' } + + encryptor.encrypt(password, data) + .then(function(encryptedStr) { + assert.equal(typeof encryptedStr, 'string', 'returns a string') + return encryptor.decrypt(wrongPassword, encryptedStr) + }) + .then(function (decryptedObj) { + assert.equal(!decryptedObj, true, 'Wrong password should not decrypt') + done() + }) + .catch(function(reason) { + done() + }) +}) diff --git a/test/integration/lib/first-time.js b/test/integration/lib/first-time.js new file mode 100644 index 000000000..a73b0cba3 --- /dev/null +++ b/test/integration/lib/first-time.js @@ -0,0 +1,15 @@ +QUnit.test('agree to terms', function (assert) { + var done = assert.async() + let app + + wait().then(function() { + app = $('iframe').contents().find('#app-content .mock-app-root') + app.find('.markdown').prop('scrollTop', 100000000) + return wait() + }).then(function() { + var title = app.find('h1').text() + assert.equal(title, 'MetaMask', 'title screen') + + done() + }) +}) diff --git a/test/integration/tests.js b/test/integration/tests.js deleted file mode 100644 index 92111b05b..000000000 --- a/test/integration/tests.js +++ /dev/null @@ -1,24 +0,0 @@ -QUnit.test('agree to terms', function (assert) { - var done = assert.async() - - // Select the mock app root - var app = $('iframe').contents().find('#app-content .mock-app-root') - - app.find('.markdown').prop('scrollTop', 100000000) - - wait().then(function() { - app.find('button').click() - }).then(function() { - return wait() - }).then(function() { - var title = app.find('h1').text() - assert.equal(title, 'MetaMask', 'title screen') - - var buttons = app.find('button') - assert.equal(buttons.length, 2, 'two buttons: create and restore') - - done() - }) - - // Wait for view to transition: -}) |