mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-12-23 09:52:26 +01:00
Merge pull request #115 from MetaMask/UnifyTestSuites
Unify test suites
This commit is contained in:
commit
15e953f11f
13
README.md
13
README.md
@ -44,18 +44,11 @@ To enjoy the live-reloading that `gulp dev` offers while working on the `web3-pr
|
|||||||
|
|
||||||
### Running Tests
|
### Running Tests
|
||||||
|
|
||||||
Currently the tests are split between two suites (we recently merged the UI into the main plugin repository). There are two different test suites to be concerned with:
|
|
||||||
|
|
||||||
Plugin tests, `npm test`.
|
|
||||||
UI tests, `npm run testUi`.
|
|
||||||
|
|
||||||
You can also run both of these with continuously watching processes, via `npm run watch` and `npm run watchUi`.
|
|
||||||
|
|
||||||
#### UI Testing Particulars
|
|
||||||
|
|
||||||
Requires `mocha` installed. Run `npm install -g mocha`.
|
Requires `mocha` installed. Run `npm install -g mocha`.
|
||||||
|
|
||||||
You can either run the test suite once with `npm testUi`, or you can reload on file changes, by running `mocha watch ui/test/**/**`.
|
Then just run `npm test`.
|
||||||
|
|
||||||
|
You can also test with a continuously watching process, via `npm run watch`.
|
||||||
|
|
||||||
### Deploying the UI
|
### Deploying the UI
|
||||||
|
|
||||||
|
10
package.json
10
package.json
@ -5,11 +5,8 @@
|
|||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"start": "gulp dev",
|
"start": "gulp dev",
|
||||||
"test": "npm run testUi",
|
"test": "mocha --require test/helper.js --compilers js:babel-register --recursive",
|
||||||
"testPlugin": "mocha --require test/helper.js --compilers js:babel-register --recursive",
|
"watch": "mocha watch --compilers js:babel-register --recursive"
|
||||||
"watch": "mocha watch --compilers js:babel-register --recursive",
|
|
||||||
"testUi": "mocha ui/test/**/**/*test.js",
|
|
||||||
"watchUi": "mocha watch ui/test/**/*test.js"
|
|
||||||
},
|
},
|
||||||
"browserify": {
|
"browserify": {
|
||||||
"transform": [
|
"transform": [
|
||||||
@ -41,13 +38,14 @@
|
|||||||
"metamask-logo": "^1.1.5",
|
"metamask-logo": "^1.1.5",
|
||||||
"multiplex": "^6.7.0",
|
"multiplex": "^6.7.0",
|
||||||
"pojo-migrator": "^2.1.0",
|
"pojo-migrator": "^2.1.0",
|
||||||
|
"polyfill-crypto.getrandomvalues": "^1.0.0",
|
||||||
"pumpify": "^1.3.4",
|
"pumpify": "^1.3.4",
|
||||||
"react": "^0.14.3",
|
"react": "^0.14.3",
|
||||||
"react-addons-css-transition-group": "^0.14.7",
|
"react-addons-css-transition-group": "^0.14.7",
|
||||||
"react-dom": "^0.14.3",
|
"react-dom": "^0.14.3",
|
||||||
"react-hyperscript": "^2.2.2",
|
"react-hyperscript": "^2.2.2",
|
||||||
"readable-stream": "^2.0.5",
|
|
||||||
"react-redux": "^4.0.3",
|
"react-redux": "^4.0.3",
|
||||||
|
"readable-stream": "^2.0.5",
|
||||||
"redux": "^3.0.5",
|
"redux": "^3.0.5",
|
||||||
"redux-logger": "^2.3.1",
|
"redux-logger": "^2.3.1",
|
||||||
"redux-thunk": "^1.0.2",
|
"redux-thunk": "^1.0.2",
|
||||||
|
@ -1,2 +1,5 @@
|
|||||||
require('jsdom-global')()
|
require('jsdom-global')()
|
||||||
window.localStorage = {}
|
window.localStorage = {}
|
||||||
|
|
||||||
|
if (!('crypto' in window)) { window.crypto = {} }
|
||||||
|
window.crypto.getRandomValues = require('polyfill-crypto.getrandomvalues')
|
||||||
|
@ -3,8 +3,8 @@ var assert = require('assert')
|
|||||||
var freeze = require('deep-freeze-strict')
|
var freeze = require('deep-freeze-strict')
|
||||||
var path = require('path')
|
var path = require('path')
|
||||||
|
|
||||||
var actions = require(path.join(__dirname, '..', '..', '..', 'app', 'actions.js'))
|
var actions = require(path.join(__dirname, '..', '..', '..', 'ui', 'app', 'actions.js'))
|
||||||
var reducers = require(path.join(__dirname, '..', '..', '..', 'app', 'reducers.js'))
|
var reducers = require(path.join(__dirname, '..', '..', '..', 'ui', 'app', 'reducers.js'))
|
||||||
|
|
||||||
describe ('config view actions', function() {
|
describe ('config view actions', function() {
|
||||||
|
|
@ -4,8 +4,8 @@ var freeze = require('deep-freeze-strict')
|
|||||||
var path = require('path')
|
var path = require('path')
|
||||||
var sinon = require('sinon')
|
var sinon = require('sinon')
|
||||||
|
|
||||||
var actions = require(path.join(__dirname, '..', '..', '..', 'app', 'actions.js'))
|
var actions = require(path.join(__dirname, '..', '..', '..', 'ui', 'app', 'actions.js'))
|
||||||
var reducers = require(path.join(__dirname, '..', '..', '..', 'app', 'reducers.js'))
|
var reducers = require(path.join(__dirname, '..', '..', '..', 'ui', 'app', 'reducers.js'))
|
||||||
|
|
||||||
describe('#recoverFromSeed(password, seed)', function() {
|
describe('#recoverFromSeed(password, seed)', function() {
|
||||||
|
|
@ -3,8 +3,8 @@ var assert = require('assert')
|
|||||||
var freeze = require('deep-freeze-strict')
|
var freeze = require('deep-freeze-strict')
|
||||||
var path = require('path')
|
var path = require('path')
|
||||||
|
|
||||||
var actions = require(path.join(__dirname, '..', '..', '..', 'app', 'actions.js'))
|
var actions = require(path.join(__dirname, '..', '..', '..', 'ui', 'app', 'actions.js'))
|
||||||
var reducers = require(path.join(__dirname, '..', '..', '..', 'app', 'reducers.js'))
|
var reducers = require(path.join(__dirname, '..', '..', '..', 'ui', 'app', 'reducers.js'))
|
||||||
|
|
||||||
describe('SET_SELECTED_ACCOUNT', function() {
|
describe('SET_SELECTED_ACCOUNT', function() {
|
||||||
|
|
@ -3,8 +3,8 @@ var assert = require('assert')
|
|||||||
var freeze = require('deep-freeze-strict')
|
var freeze = require('deep-freeze-strict')
|
||||||
var path = require('path')
|
var path = require('path')
|
||||||
|
|
||||||
var actions = require(path.join(__dirname, '..', '..', '..', 'app', 'actions.js'))
|
var actions = require(path.join(__dirname, '..', '..', '..', 'ui', 'app', 'actions.js'))
|
||||||
var reducers = require(path.join(__dirname, '..', '..', '..', 'app', 'reducers.js'))
|
var reducers = require(path.join(__dirname, '..', '..', '..', 'ui', 'app', 'reducers.js'))
|
||||||
|
|
||||||
describe('tx confirmation screen', function() {
|
describe('tx confirmation screen', function() {
|
||||||
var initialState, result
|
var initialState, result
|
@ -3,8 +3,8 @@ var assert = require('assert')
|
|||||||
var freeze = require('deep-freeze-strict')
|
var freeze = require('deep-freeze-strict')
|
||||||
var path = require('path')
|
var path = require('path')
|
||||||
|
|
||||||
var actions = require(path.join(__dirname, '..', '..', '..', 'app', 'actions.js'))
|
var actions = require(path.join(__dirname, '..', '..', '..', 'ui', 'app', 'actions.js'))
|
||||||
var reducers = require(path.join(__dirname, '..', '..', '..', 'app', 'reducers.js'))
|
var reducers = require(path.join(__dirname, '..', '..', '..', 'ui', 'app', 'reducers.js'))
|
||||||
|
|
||||||
describe('SHOW_INFO_PAGE', function() {
|
describe('SHOW_INFO_PAGE', function() {
|
||||||
|
|
@ -3,8 +3,8 @@ var assert = require('assert')
|
|||||||
var freeze = require('deep-freeze-strict')
|
var freeze = require('deep-freeze-strict')
|
||||||
var path = require('path')
|
var path = require('path')
|
||||||
|
|
||||||
var actions = require(path.join(__dirname, '..', '..', '..', 'app', 'actions.js'))
|
var actions = require(path.join(__dirname, '..', '..', '..', 'ui', 'app', 'actions.js'))
|
||||||
var reducers = require(path.join(__dirname, '..', '..', '..', 'app', 'reducers.js'))
|
var reducers = require(path.join(__dirname, '..', '..', '..', 'ui', 'app', 'reducers.js'))
|
||||||
|
|
||||||
describe('action DISPLAY_WARNING', function() {
|
describe('action DISPLAY_WARNING', function() {
|
||||||
|
|
@ -1,14 +1,16 @@
|
|||||||
var test = require('tape')
|
var assert = require('assert')
|
||||||
var path = require('path')
|
var path = require('path')
|
||||||
|
|
||||||
var wallet1 = require(path.join('..', 'lib', 'migrations', '001.json'))
|
var wallet1 = require(path.join('..', 'lib', 'migrations', '001.json'))
|
||||||
var migration2 = require(path.join('..', '..', 'app', 'scripts', 'migrations', '002'))
|
var migration2 = require(path.join('..', '..', 'app', 'scripts', 'migrations', '002'))
|
||||||
|
|
||||||
test('wallet1 is migrated successfully', function(t) {
|
describe('wallet1 is migrated successfully', function() {
|
||||||
|
|
||||||
var result = migration2.migrate(wallet1.data)
|
|
||||||
t.equal(result.config.provider.type, 'rpc', 'provider should be rpc')
|
|
||||||
t.equal(result.config.provider.rpcTarget, 'https://rpc.metamask.io/', 'provider should be our rpc')
|
|
||||||
|
|
||||||
|
it('should convert etherscan provider', function(done) {
|
||||||
|
var result = migration2.migrate(wallet1.data)
|
||||||
|
assert.equal(result.config.provider.type, 'rpc', 'provider should be rpc')
|
||||||
|
assert.equal(result.config.provider.rpcTarget, 'https://rpc.metamask.io/', 'provider should be our rpc')
|
||||||
|
done()
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@ var sinon = require('sinon')
|
|||||||
const ethUtil = require('ethereumjs-util')
|
const ethUtil = require('ethereumjs-util')
|
||||||
|
|
||||||
var path = require('path')
|
var path = require('path')
|
||||||
var util = require(path.join(__dirname, '..', '..', 'app', 'util.js'))
|
var util = require(path.join(__dirname, '..', '..', 'ui', 'app', 'util.js'))
|
||||||
|
|
||||||
describe('util', function() {
|
describe('util', function() {
|
||||||
var ethInWei = '1'
|
var ethInWei = '1'
|
@ -1,8 +0,0 @@
|
|||||||
if (typeof process === 'object') {
|
|
||||||
// Initialize node environment
|
|
||||||
global.expect = require('chai').expect
|
|
||||||
require('mocha-jsdom')()
|
|
||||||
} else {
|
|
||||||
window.expect = window.chai.expect
|
|
||||||
window.require = function () { /* noop */ }
|
|
||||||
}
|
|
Loading…
x
Reference in New Issue
Block a user