mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-12-23 09:52:26 +01:00
Merge pull request #3069 from tmashuang/uat
Revert integration tests to uat to oldUI
This commit is contained in:
commit
62ce65c99e
10
CHANGELOG.md
10
CHANGELOG.md
@ -2,6 +2,16 @@
|
|||||||
|
|
||||||
## Current Master
|
## Current Master
|
||||||
|
|
||||||
|
## 3.13.7 2018-1-22
|
||||||
|
|
||||||
|
- Add ability to bypass gas estimation loading indicator.
|
||||||
|
- Forward failed transactions to Sentry error reporting service
|
||||||
|
- Re-add changes from 3.13.5
|
||||||
|
|
||||||
|
## 3.13.6 2017-1-18
|
||||||
|
|
||||||
|
- Roll back changes to 3.13.4 to fix some issues with the new Infura REST provider.
|
||||||
|
|
||||||
## 3.13.5 2018-1-16
|
## 3.13.5 2018-1-16
|
||||||
|
|
||||||
- Estimating gas limit for simple ether sends now faster & cheaper, by avoiding VM usage on recipients with no code.
|
- Estimating gas limit for simple ether sends now faster & cheaper, by avoiding VM usage on recipients with no code.
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "MetaMask",
|
"name": "MetaMask",
|
||||||
"short_name": "Metamask",
|
"short_name": "Metamask",
|
||||||
"version": "4.0.10",
|
"version": "3.13.7",
|
||||||
"manifest_version": 2,
|
"manifest_version": 2,
|
||||||
"author": "https://metamask.io",
|
"author": "https://metamask.io",
|
||||||
"description": "Ethereum Browser Extension",
|
"description": "Ethereum Browser Extension",
|
||||||
|
@ -27,7 +27,7 @@ global.METAMASK_NOTIFIER = notificationManager
|
|||||||
|
|
||||||
// setup sentry error reporting
|
// setup sentry error reporting
|
||||||
const release = platform.getVersion()
|
const release = platform.getVersion()
|
||||||
setupRaven({ release })
|
const raven = setupRaven({ release })
|
||||||
|
|
||||||
let popupIsOpen = false
|
let popupIsOpen = false
|
||||||
|
|
||||||
@ -77,6 +77,16 @@ function setupController (initState) {
|
|||||||
})
|
})
|
||||||
global.metamaskController = controller
|
global.metamaskController = controller
|
||||||
|
|
||||||
|
// report failed transactions to Sentry
|
||||||
|
controller.txController.on(`tx:status-update`, (txId, status) => {
|
||||||
|
if (status !== 'failed') return
|
||||||
|
const txMeta = controller.txController.txStateManager.getTx(txId)
|
||||||
|
raven.captureMessage('Transaction Failed', {
|
||||||
|
// "extra" key is required by Sentry
|
||||||
|
extra: txMeta,
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
// setup state persistence
|
// setup state persistence
|
||||||
pump(
|
pump(
|
||||||
asStream(controller.store),
|
asStream(controller.store),
|
||||||
|
@ -21,4 +21,6 @@ function setupRaven(opts) {
|
|||||||
Raven.config(ravenTarget, {
|
Raven.config(ravenTarget, {
|
||||||
release,
|
release,
|
||||||
}).install()
|
}).install()
|
||||||
|
|
||||||
|
return Raven
|
||||||
}
|
}
|
||||||
|
@ -37,3 +37,8 @@ apis.forEach(function (api) {
|
|||||||
|
|
||||||
extension.runtime.reload = noop
|
extension.runtime.reload = noop
|
||||||
extension.tabs.create = noop
|
extension.tabs.create = noop
|
||||||
|
extension.runtime.getManifest = function () {
|
||||||
|
return {
|
||||||
|
version: 'development'
|
||||||
|
}
|
||||||
|
}
|
@ -23,6 +23,7 @@ const states = require('./development/states')
|
|||||||
const Selector = require('./development/selector')
|
const Selector = require('./development/selector')
|
||||||
const MetamaskController = require('./app/scripts/metamask-controller')
|
const MetamaskController = require('./app/scripts/metamask-controller')
|
||||||
const firstTimeState = require('./app/scripts/first-time-state')
|
const firstTimeState = require('./app/scripts/first-time-state')
|
||||||
|
const ExtensionPlatform = require('./app/scripts/platforms/extension')
|
||||||
const extension = require('./development/mockExtension')
|
const extension = require('./development/mockExtension')
|
||||||
const noop = function () {}
|
const noop = function () {}
|
||||||
|
|
||||||
@ -67,6 +68,7 @@ const controller = new MetamaskController({
|
|||||||
initState: firstTimeState,
|
initState: firstTimeState,
|
||||||
})
|
})
|
||||||
global.metamaskController = controller
|
global.metamaskController = controller
|
||||||
|
global.platform = new ExtensionPlatform
|
||||||
|
|
||||||
//
|
//
|
||||||
// User Interface
|
// User Interface
|
||||||
|
@ -11,7 +11,7 @@ function LoadingIndicator () {
|
|||||||
}
|
}
|
||||||
|
|
||||||
LoadingIndicator.prototype.render = function () {
|
LoadingIndicator.prototype.render = function () {
|
||||||
const { isLoading, loadingMessage } = this.props
|
const { isLoading, loadingMessage, canBypass, bypass } = this.props
|
||||||
|
|
||||||
return (
|
return (
|
||||||
isLoading ? h('.full-flex-height', {
|
isLoading ? h('.full-flex-height', {
|
||||||
@ -28,6 +28,16 @@ LoadingIndicator.prototype.render = function () {
|
|||||||
background: 'rgba(255, 255, 255, 0.8)',
|
background: 'rgba(255, 255, 255, 0.8)',
|
||||||
},
|
},
|
||||||
}, [
|
}, [
|
||||||
|
canBypass ? h( 'i.fa.fa-close.cursor-pointer.close-loading', {
|
||||||
|
style: {
|
||||||
|
position: 'absolute',
|
||||||
|
top: '1px',
|
||||||
|
right: '15px',
|
||||||
|
color: '#AEAEAE',
|
||||||
|
},
|
||||||
|
onClick: bypass,
|
||||||
|
}) : null,
|
||||||
|
|
||||||
h('img', {
|
h('img', {
|
||||||
src: 'images/loading.svg',
|
src: 'images/loading.svg',
|
||||||
}),
|
}),
|
||||||
|
@ -62,8 +62,12 @@ ConfirmTxScreen.prototype.render = function () {
|
|||||||
h('.flex-column.flex-grow', [
|
h('.flex-column.flex-grow', [
|
||||||
|
|
||||||
h(LoadingIndicator, {
|
h(LoadingIndicator, {
|
||||||
isLoading: txData.loadingDefaults,
|
isLoading: this.state ? !this.state.bypassLoadingScreen : txData.loadingDefaults,
|
||||||
loadingMessage: 'Estimating transaction cost…',
|
loadingMessage: 'Estimating transaction cost…',
|
||||||
|
canBypass: true,
|
||||||
|
bypass: () => {
|
||||||
|
this.setState({bypassLoadingScreen: true})
|
||||||
|
},
|
||||||
}),
|
}),
|
||||||
|
|
||||||
// subtitle and nav
|
// subtitle and nav
|
||||||
|
@ -77,9 +77,8 @@
|
|||||||
"eslint-plugin-react": "^7.4.0",
|
"eslint-plugin-react": "^7.4.0",
|
||||||
"eth-bin-to-ops": "^1.0.1",
|
"eth-bin-to-ops": "^1.0.1",
|
||||||
"eth-block-tracker": "^2.3.0",
|
"eth-block-tracker": "^2.3.0",
|
||||||
"eth-contract-metadata": "^1.1.4",
|
|
||||||
"eth-json-rpc-filters": "^1.2.5",
|
"eth-json-rpc-filters": "^1.2.5",
|
||||||
"eth-json-rpc-infura": "^2.0.7",
|
"eth-json-rpc-infura": "^2.0.11",
|
||||||
"eth-keyring-controller": "^2.1.4",
|
"eth-keyring-controller": "^2.1.4",
|
||||||
"eth-contract-metadata": "^1.1.5",
|
"eth-contract-metadata": "^1.1.5",
|
||||||
"eth-hd-keyring": "^1.2.1",
|
"eth-hd-keyring": "^1.2.1",
|
||||||
@ -114,7 +113,7 @@
|
|||||||
"iframe-stream": "^3.0.0",
|
"iframe-stream": "^3.0.0",
|
||||||
"inject-css": "^0.1.1",
|
"inject-css": "^0.1.1",
|
||||||
"jazzicon": "^1.2.0",
|
"jazzicon": "^1.2.0",
|
||||||
"json-rpc-engine": "^3.5.0",
|
"json-rpc-engine": "^3.6.1",
|
||||||
"json-rpc-middleware-stream": "^1.0.1",
|
"json-rpc-middleware-stream": "^1.0.1",
|
||||||
"lodash.debounce": "^4.0.8",
|
"lodash.debounce": "^4.0.8",
|
||||||
"lodash.memoize": "^4.1.2",
|
"lodash.memoize": "^4.1.2",
|
||||||
@ -170,7 +169,7 @@
|
|||||||
"valid-url": "^1.0.9",
|
"valid-url": "^1.0.9",
|
||||||
"vreme": "^3.0.2",
|
"vreme": "^3.0.2",
|
||||||
"web3": "^0.20.1",
|
"web3": "^0.20.1",
|
||||||
"web3-provider-engine": "^13.5.0",
|
"web3-provider-engine": "^13.5.6",
|
||||||
"web3-stream-provider": "^3.0.1",
|
"web3-stream-provider": "^3.0.1",
|
||||||
"xtend": "^4.0.1"
|
"xtend": "^4.0.1"
|
||||||
},
|
},
|
||||||
@ -188,6 +187,7 @@
|
|||||||
"brfs": "^1.4.3",
|
"brfs": "^1.4.3",
|
||||||
"browserify": "^14.4.0",
|
"browserify": "^14.4.0",
|
||||||
"chai": "^4.1.0",
|
"chai": "^4.1.0",
|
||||||
|
"compression": "^1.7.1",
|
||||||
"coveralls": "^3.0.0",
|
"coveralls": "^3.0.0",
|
||||||
"deep-freeze-strict": "^1.1.1",
|
"deep-freeze-strict": "^1.1.1",
|
||||||
"del": "^3.0.0",
|
"del": "^3.0.0",
|
||||||
|
@ -39,9 +39,8 @@ async function runFirstTimeUsageTest(assert, done) {
|
|||||||
await timeout()
|
await timeout()
|
||||||
|
|
||||||
// Scroll through terms
|
// Scroll through terms
|
||||||
const title = app.find('h1').text()
|
const title = app.find('h1')[1]
|
||||||
// TODO Find where Metamask is getting added twice in the title
|
assert.equal(title.textContent, 'MetaMask', 'title screen')
|
||||||
assert.equal(title, 'MetaMaskMetaMask', 'title screen')
|
|
||||||
|
|
||||||
// enter password
|
// enter password
|
||||||
const pwBox = app.find('#password-box')[0]
|
const pwBox = app.find('#password-box')[0]
|
||||||
@ -67,19 +66,19 @@ async function runFirstTimeUsageTest(assert, done) {
|
|||||||
|
|
||||||
await timeout(1000)
|
await timeout(1000)
|
||||||
|
|
||||||
const detail = app.find('.wallet-view')[0]
|
const detail = app.find('.account-detail-section')[0]
|
||||||
assert.ok(detail, 'Account detail section loaded.')
|
assert.ok(detail, 'Account detail section loaded.')
|
||||||
|
|
||||||
await timeout(1000)
|
const sandwich = app.find('.sandwich-expando')[0]
|
||||||
|
sandwich.click()
|
||||||
|
|
||||||
const menu = app.find('.account-menu__icon')[0]
|
await timeout()
|
||||||
menu.click()
|
|
||||||
|
|
||||||
await timeout(1000)
|
const menu = app.find('.menu-droppo')[0]
|
||||||
|
const children = menu.children
|
||||||
const lock = app.find('.account-menu__logout-button')[0]
|
const logout = children[2]
|
||||||
assert.ok(lock, 'Lock menu item found')
|
assert.ok(logout, 'Lock menu item found')
|
||||||
lock.click()
|
logout.click()
|
||||||
|
|
||||||
await timeout(1000)
|
await timeout(1000)
|
||||||
|
|
||||||
@ -91,30 +90,36 @@ async function runFirstTimeUsageTest(assert, done) {
|
|||||||
|
|
||||||
await timeout(1000)
|
await timeout(1000)
|
||||||
|
|
||||||
const detail2 = app.find('.wallet-view')[0]
|
const detail2 = app.find('.account-detail-section')[0]
|
||||||
assert.ok(detail2, 'Account detail section loaded again.')
|
assert.ok(detail2, 'Account detail section loaded again.')
|
||||||
|
|
||||||
await timeout()
|
await timeout()
|
||||||
|
|
||||||
// open account settings dropdown
|
// open account settings dropdown
|
||||||
const qrButton = app.find('.wallet-view__details-button')[0]
|
const qrButton = app.find('.fa.fa-ellipsis-h')[0]
|
||||||
qrButton.click()
|
qrButton.click()
|
||||||
|
|
||||||
await timeout(1000)
|
await timeout(1000)
|
||||||
|
|
||||||
const qrHeader = app.find('.editable-label__value')[0]
|
// qr code item
|
||||||
const qrContainer = app.find('.qr-wrapper')[0]
|
const qrButton2 = app.find('.dropdown-menu-item')[1]
|
||||||
|
qrButton2.click()
|
||||||
|
|
||||||
|
await timeout(1000)
|
||||||
|
|
||||||
|
const qrHeader = app.find('.qr-header')[0]
|
||||||
|
const qrContainer = app.find('#qr-container')[0]
|
||||||
assert.equal(qrHeader.textContent, 'Account 1', 'Should show account label.')
|
assert.equal(qrHeader.textContent, 'Account 1', 'Should show account label.')
|
||||||
assert.ok(qrContainer, 'QR Container found')
|
assert.ok(qrContainer, 'QR Container found')
|
||||||
|
|
||||||
await timeout()
|
await timeout()
|
||||||
|
|
||||||
const networkMenu = app.find('.network-component')[0]
|
const networkMenu = app.find('.network-indicator')[0]
|
||||||
networkMenu.click()
|
networkMenu.click()
|
||||||
|
|
||||||
await timeout()
|
await timeout()
|
||||||
|
|
||||||
const networkMenu2 = app.find('.menu-droppo')[0]
|
const networkMenu2 = app.find('.network-indicator')[0]
|
||||||
const children2 = networkMenu2.children
|
const children2 = networkMenu2.children
|
||||||
children2.length[3]
|
children2.length[3]
|
||||||
assert.ok(children2, 'All network options present')
|
assert.ok(children2, 'All network options present')
|
||||||
|
@ -342,7 +342,7 @@ class Settings extends Component {
|
|||||||
this.renderLogo(),
|
this.renderLogo(),
|
||||||
h('div.settings__info-item', [
|
h('div.settings__info-item', [
|
||||||
h('div.settings__info-version-header', 'MetaMask Version'),
|
h('div.settings__info-version-header', 'MetaMask Version'),
|
||||||
h('div.settings__info-version-number', version),
|
h('div.settings__info-version-number', `${version}`),
|
||||||
]),
|
]),
|
||||||
h('div.settings__info-item', [
|
h('div.settings__info-item', [
|
||||||
h(
|
h(
|
||||||
|
Loading…
Reference in New Issue
Block a user