aboutsummaryrefslogtreecommitdiffstats
path: root/test/e2e
diff options
context:
space:
mode:
Diffstat (limited to 'test/e2e')
-rw-r--r--test/e2e/beta/contract-test/contract.js19
-rw-r--r--test/e2e/beta/from-import-beta-ui.spec.js20
-rw-r--r--test/e2e/beta/metamask-beta-ui.spec.js9
-rw-r--r--test/e2e/func.js2
-rw-r--r--test/e2e/metamask.spec.js5
5 files changed, 30 insertions, 25 deletions
diff --git a/test/e2e/beta/contract-test/contract.js b/test/e2e/beta/contract-test/contract.js
index 84e11381f..4b0fd3377 100644
--- a/test/e2e/beta/contract-test/contract.js
+++ b/test/e2e/beta/contract-test/contract.js
@@ -28,22 +28,25 @@ The `piggybankContract` is compiled from:
}
*/
-var piggybankContract = web3.eth.contract([{"constant":false,"inputs":[{"name":"withdrawAmount","type":"uint256"}],"name":"withdraw","outputs":[{"name":"remainingBal","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"deposit","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"}]);
+var piggybankContract = web3.eth.contract([{'constant': false, 'inputs': [{'name': 'withdrawAmount', 'type': 'uint256'}], 'name': 'withdraw', 'outputs': [{'name': 'remainingBal', 'type': 'uint256'}], 'payable': false, 'stateMutability': 'nonpayable', 'type': 'function'}, {'constant': true, 'inputs': [], 'name': 'owner', 'outputs': [{'name': '', 'type': 'address'}], 'payable': false, 'stateMutability': 'view', 'type': 'function'}, {'constant': false, 'inputs': [], 'name': 'deposit', 'outputs': [{'name': '', 'type': 'uint256'}], 'payable': true, 'stateMutability': 'payable', 'type': 'function'}, {'inputs': [], 'payable': false, 'stateMutability': 'nonpayable', 'type': 'constructor'}])
+const deployButton = document.getElementById('deployButton')
+const depositButton = document.getElementById('depositButton')
+const withdrawButton = document.getElementById('withdrawButton')
deployButton.addEventListener('click', function (event) {
- var piggybank = piggybankContract.new(
+ piggybankContract.new(
{
from: web3.eth.accounts[0],
data: '0x608060405234801561001057600080fd5b5033600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000808190555061023b806100686000396000f300608060405260043610610057576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680632e1a7d4d1461005c5780638da5cb5b1461009d578063d0e30db0146100f4575b600080fd5b34801561006857600080fd5b5061008760048036038101908080359060200190929190505050610112565b6040518082815260200191505060405180910390f35b3480156100a957600080fd5b506100b26101d0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6100fc6101f6565b6040518082815260200191505060405180910390f35b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561017057600080fd5b8160008082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501580156101c5573d6000803e3d6000fd5b506000549050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60003460008082825401925050819055506000549050905600a165627a7a72305820f237db3ec816a52589d82512117bc85bc08d3537683ffeff9059108caf3e5d400029',
- gas: '4700000'
- }, function (e, contract){
- console.log(e, contract);
- console.log('deployed!', contract);
+ gas: '4700000',
+ }, function (e, contract) {
+ console.log(e, contract)
+ console.log('deployed!', contract)
if (typeof contract.address !== 'undefined') {
- console.log('Contract mined! address: ' + contract.address + ' transactionHash: ' + contract.transactionHash);
+ console.log('Contract mined! address: ' + contract.address + ' transactionHash: ' + contract.transactionHash)
- console.log(`contract`, contract);
+ console.log(`contract`, contract)
depositButton.addEventListener('click', function (event) {
console.log('contract.deposit', { from: web3.eth.accounts[0], value: '0x29a2241af62c0000' })
diff --git a/test/e2e/beta/from-import-beta-ui.spec.js b/test/e2e/beta/from-import-beta-ui.spec.js
index 2470d1eef..86a6c441c 100644
--- a/test/e2e/beta/from-import-beta-ui.spec.js
+++ b/test/e2e/beta/from-import-beta-ui.spec.js
@@ -19,7 +19,6 @@ describe('Using MetaMask with an existing account', function () {
const browser = process.env.SELENIUM_BROWSER
let driver
let extensionUri
- let tokenAddress
const testSeedPhrase = 'phrase upgrade clock rough situate wedding elder clever doctor stamp excess tent'
const testAddress = '0xE18035BF8712672935FDB4e5e431b1a0183d2DFC'
@@ -73,15 +72,16 @@ describe('Using MetaMask with an existing account', function () {
await delay(regularDelayMs)
// Close all other tabs
- let [oldUi, infoPage, newUi] = await driver.getAllWindowHandles()
- newUi = newUi || infoPage
+ const [oldUi, infoPage, newUi] = await driver.getAllWindowHandles()
+
+ const newUiOrInfoPage = newUi || infoPage
await driver.switchTo().window(oldUi)
await driver.close()
- if (infoPage !== newUi) {
+ if (infoPage !== newUiOrInfoPage) {
await driver.switchTo().window(infoPage)
await driver.close()
}
- await driver.switchTo().window(newUi)
+ await driver.switchTo().window(newUiOrInfoPage)
await delay(regularDelayMs)
const continueBtn = await findElement(driver, By.css('.welcome-screen__button'))
@@ -325,11 +325,16 @@ describe('Using MetaMask with an existing account', function () {
})
describe('Add a custom token from TokenFactory', () => {
+ let extension, tokenFactory
+
it('creates a new token', async () => {
await driver.executeScript('window.open("https://tokenfactory.surge.sh/#/factory")')
await delay(waitingNewPageDelayMs)
- const [extension, tokenFactory] = await driver.getAllWindowHandles()
+ const windowHandles = await driver.getAllWindowHandles()
+ extension = windowHandles[0]
+ tokenFactory = windowHandles[1]
+
await driver.switchTo().window(tokenFactory)
const [
totalSupply,
@@ -350,6 +355,7 @@ describe('Using MetaMask with an existing account', function () {
await driver.switchTo().window(extension)
await driver.get(extensionUri)
await delay(regularDelayMs)
+ })
it('enter private key', async () => {
const privateKeyInput = await findElement(driver, By.css('#private-key-box'))
@@ -359,7 +365,7 @@ describe('Using MetaMask with an existing account', function () {
await driver.switchTo().window(tokenFactory)
await delay(regularDelayMs)
const tokenContactAddress = await driver.findElement(By.css('div > div > div:nth-child(2) > span:nth-child(3)'))
- tokenAddress = await tokenContactAddress.getText()
+ await tokenContactAddress.getText()
await driver.close()
await driver.switchTo().window(extension)
await driver.get(extensionUri)
diff --git a/test/e2e/beta/metamask-beta-ui.spec.js b/test/e2e/beta/metamask-beta-ui.spec.js
index ad7eda0f5..45a22f0b3 100644
--- a/test/e2e/beta/metamask-beta-ui.spec.js
+++ b/test/e2e/beta/metamask-beta-ui.spec.js
@@ -25,7 +25,6 @@ describe('MetaMask', function () {
const tinyDelayMs = 1000
const regularDelayMs = tinyDelayMs * 2
const largeDelayMs = regularDelayMs * 2
- const waitingNewPageDelayMs = regularDelayMs * 30
this.timeout(0)
this.bail(true)
@@ -88,7 +87,7 @@ describe('MetaMask', function () {
await delay(regularDelayMs)
// Close all other tabs
- let [oldUi, tab1, tab2] = await driver.getAllWindowHandles()
+ const [oldUi, tab1, tab2] = await driver.getAllWindowHandles()
await driver.switchTo().window(oldUi)
await driver.close()
@@ -269,7 +268,7 @@ describe('MetaMask', function () {
await driver.findElement(By.css('.qr-wrapper')).isDisplayed()
await delay(regularDelayMs)
- let accountModal = await driver.findElement(By.css('span .modal'))
+ const accountModal = await driver.findElement(By.css('span .modal'))
await driver.executeScript("document.querySelector('.account-modal-close').click()")
@@ -487,7 +486,7 @@ describe('MetaMask', function () {
await configureGas.click()
await delay(regularDelayMs)
- let gasModal = await driver.findElement(By.css('span .modal'))
+ const gasModal = await driver.findElement(By.css('span .modal'))
await driver.wait(until.elementLocated(By.css('.send-v2__customize-gas__title')))
const [gasPriceInput, gasLimitInput] = await findElements(driver, By.css('.customize-gas-input'))
@@ -700,7 +699,7 @@ describe('MetaMask', function () {
it('sends an already created token', async () => {
openNewPage(driver, `https://tokenfactory.surge.sh/#/token/${tokenAddress}`)
- const [extension, tokenFactory] = await driver.getAllWindowHandles()
+ const [extension] = await driver.getAllWindowHandles()
const [
transferToAddress,
diff --git a/test/e2e/func.js b/test/e2e/func.js
index 700552658..13dfb82f9 100644
--- a/test/e2e/func.js
+++ b/test/e2e/func.js
@@ -37,7 +37,7 @@ async function createModifiedTestBuild ({ browser, srcPath }) {
}
async function setupBrowserAndExtension ({ browser, extPath }) {
- let drive, extensionId, extensionUri
+ let driver, extensionId, extensionUri
if (browser === 'chrome') {
driver = buildChromeWebDriver(extPath)
diff --git a/test/e2e/metamask.spec.js b/test/e2e/metamask.spec.js
index 9a277b453..72086326d 100644
--- a/test/e2e/metamask.spec.js
+++ b/test/e2e/metamask.spec.js
@@ -1,8 +1,5 @@
-const fs = require('fs-extra')
-const mkdirp = require('mkdirp')
const path = require('path')
const assert = require('assert')
-const pify = require('pify')
const { By, Key, until } = require('selenium-webdriver')
const { delay, createModifiedTestBuild, setupBrowserAndExtension, verboseReportOnFailure } = require('./func')
@@ -315,7 +312,7 @@ describe('Metamask popup page', function () {
})
})
- async function checkBrowserForConsoleErrors() {
+ async function checkBrowserForConsoleErrors () {
const ignoredLogTypes = ['WARNING']
const ignoredErrorMessages = [
// React throws error warnings on "dataset", but still sets the data-* properties correctly