aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorDan Finlay <542863+danfinlay@users.noreply.github.com>2018-06-15 00:49:38 +0800
committerGitHub <noreply@github.com>2018-06-15 00:49:38 +0800
commit3a5089da6faa35d6dc20dacbd87717e055a61a34 (patch)
tree3d55d150d69405b8c2d76ca9f3c4511626dbc5fb /test
parent1f83a110b959fcf9d8fa7cedb852f6c665bd0fc5 (diff)
parentc2afb7903522d87345f4a39f7ca3df8fa8889d53 (diff)
downloadtangerine-wallet-browser-3a5089da6faa35d6dc20dacbd87717e055a61a34.tar
tangerine-wallet-browser-3a5089da6faa35d6dc20dacbd87717e055a61a34.tar.gz
tangerine-wallet-browser-3a5089da6faa35d6dc20dacbd87717e055a61a34.tar.bz2
tangerine-wallet-browser-3a5089da6faa35d6dc20dacbd87717e055a61a34.tar.lz
tangerine-wallet-browser-3a5089da6faa35d6dc20dacbd87717e055a61a34.tar.xz
tangerine-wallet-browser-3a5089da6faa35d6dc20dacbd87717e055a61a34.tar.zst
tangerine-wallet-browser-3a5089da6faa35d6dc20dacbd87717e055a61a34.zip
Merge pull request #4566 from MetaMask/notice-phishing
Push new notice on recent phishing incidents
Diffstat (limited to 'test')
-rw-r--r--test/e2e/beta/from-import-beta-ui.spec.js29
-rw-r--r--test/e2e/beta/metamask-beta-ui.spec.js25
-rw-r--r--test/e2e/metamask.spec.js25
-rw-r--r--test/unit/app/controllers/notice-controller-test.js50
4 files changed, 62 insertions, 67 deletions
diff --git a/test/e2e/beta/from-import-beta-ui.spec.js b/test/e2e/beta/from-import-beta-ui.spec.js
index efae948f9..823c72a3a 100644
--- a/test/e2e/beta/from-import-beta-ui.spec.js
+++ b/test/e2e/beta/from-import-beta-ui.spec.js
@@ -134,19 +134,32 @@ describe('Using MetaMask with an existing account', function () {
await delay(regularDelayMs)
})
+ it('clicks through the ToS', async () => {
+ // terms of use
+ const canClickThrough = await driver.findElement(By.css('.tou button')).isEnabled()
+ assert.equal(canClickThrough, false, 'disabled continue button')
+ const bottomOfTos = await findElement(driver, By.linkText('Attributions'))
+ await driver.executeScript('arguments[0].scrollIntoView(true)', bottomOfTos)
+ await delay(regularDelayMs)
+ const acceptTos = await findElement(driver, By.css('.tou button'))
+ await acceptTos.click()
+ await delay(regularDelayMs)
+ })
+
it('clicks through the privacy notice', async () => {
- const [nextScreen] = await findElements(driver, By.css('.tou button'))
+ // privacy notice
+ const nextScreen = await findElement(driver, By.css('.tou button'))
await nextScreen.click()
await delay(regularDelayMs)
+ })
- const canClickThrough = await driver.findElement(By.css('.tou button')).isEnabled()
- assert.equal(canClickThrough, false, 'disabled continue button')
- const element = await findElement(driver, By.linkText('Attributions'))
- await driver.executeScript('arguments[0].scrollIntoView(true)', element)
+ it('clicks through the phishing notice', async () => {
+ // phishing notice
+ const noticeElement = await driver.findElement(By.css('.markdown'))
+ await driver.executeScript('arguments[0].scrollTop = arguments[0].scrollHeight', noticeElement)
await delay(regularDelayMs)
-
- const acceptTos = await findElement(driver, By.xpath(`//button[contains(text(), 'Accept')]`))
- await acceptTos.click()
+ const nextScreen = await findElement(driver, By.css('.tou button'))
+ await nextScreen.click()
await delay(regularDelayMs)
})
})
diff --git a/test/e2e/beta/metamask-beta-ui.spec.js b/test/e2e/beta/metamask-beta-ui.spec.js
index ceeea31a5..d911b91ed 100644
--- a/test/e2e/beta/metamask-beta-ui.spec.js
+++ b/test/e2e/beta/metamask-beta-ui.spec.js
@@ -128,22 +128,35 @@ describe('MetaMask', function () {
await delay(regularDelayMs)
})
- it('clicks through the privacy notice', async () => {
- const nextScreen = await findElement(driver, By.css('.tou button'))
- await nextScreen.click()
- await delay(regularDelayMs)
-
+ it('clicks through the ToS', async () => {
+ // terms of use
const canClickThrough = await driver.findElement(By.css('.tou button')).isEnabled()
assert.equal(canClickThrough, false, 'disabled continue button')
const bottomOfTos = await findElement(driver, By.linkText('Attributions'))
await driver.executeScript('arguments[0].scrollIntoView(true)', bottomOfTos)
await delay(regularDelayMs)
-
const acceptTos = await findElement(driver, By.css('.tou button'))
await acceptTos.click()
await delay(regularDelayMs)
})
+ it('clicks through the privacy notice', async () => {
+ // privacy notice
+ const nextScreen = await findElement(driver, By.css('.tou button'))
+ await nextScreen.click()
+ await delay(regularDelayMs)
+ })
+
+ it('clicks through the phishing notice', async () => {
+ // phishing notice
+ const noticeElement = await driver.findElement(By.css('.markdown'))
+ await driver.executeScript('arguments[0].scrollTop = arguments[0].scrollHeight', noticeElement)
+ await delay(regularDelayMs)
+ const nextScreen = await findElement(driver, By.css('.tou button'))
+ await nextScreen.click()
+ await delay(regularDelayMs)
+ })
+
let seedPhrase
it('reveals the seed phrase', async () => {
diff --git a/test/e2e/metamask.spec.js b/test/e2e/metamask.spec.js
index a08a34d96..b0a8fe411 100644
--- a/test/e2e/metamask.spec.js
+++ b/test/e2e/metamask.spec.js
@@ -71,13 +71,6 @@ describe('Metamask popup page', function () {
it('matches MetaMask title', async () => {
const title = await driver.getTitle()
assert.equal(title, 'MetaMask', 'title matches MetaMask')
- })
-
- it('shows privacy notice', async () => {
- await delay(300)
- const privacy = await driver.findElement(By.css('.terms-header')).getText()
- assert.equal(privacy, 'PRIVACY NOTICE', 'shows privacy notice')
- await driver.findElement(By.css('button')).click()
await delay(300)
})
@@ -100,6 +93,24 @@ describe('Metamask popup page', function () {
await button.click()
})
+ it('shows privacy notice', async () => {
+ const privacy = await driver.findElement(By.css('.terms-header')).getText()
+ assert.equal(privacy, 'PRIVACY NOTICE', 'shows privacy notice')
+ await driver.findElement(By.css('button')).click()
+ await delay(300)
+ })
+
+ it('shows phishing notice', async () => {
+ await delay(300)
+ const noticeHeader = await driver.findElement(By.css('.terms-header')).getText()
+ assert.equal(noticeHeader, 'PHISHING WARNING', 'shows phishing warning')
+ const element = await driver.findElement(By.css('.markdown'))
+ await driver.executeScript('arguments[0].scrollTop = arguments[0].scrollHeight', element)
+ await delay(300)
+ await driver.findElement(By.css('button')).click()
+ await delay(300)
+ })
+
it('accepts password with length of eight', async () => {
const passwordBox = await driver.findElement(By.id('password-box'))
const passwordBoxConfirm = await driver.findElement(By.id('password-box-confirm'))
diff --git a/test/unit/app/controllers/notice-controller-test.js b/test/unit/app/controllers/notice-controller-test.js
index e78b69623..b3ae75080 100644
--- a/test/unit/app/controllers/notice-controller-test.js
+++ b/test/unit/app/controllers/notice-controller-test.js
@@ -14,18 +14,6 @@ describe('notice-controller', function () {
})
describe('notices', function () {
- describe('#getNoticesList', function () {
- it('should return an empty array when new', function (done) {
- // const testList = [{
- // id: 0,
- // read: false,
- // title: 'Futuristic Notice',
- // }]
- var result = noticeController.getNoticesList()
- assert.equal(result.length, 0)
- done()
- })
- })
describe('#setNoticesList', function () {
it('should set data appropriately', function (done) {
@@ -41,36 +29,6 @@ describe('notice-controller', function () {
})
})
- describe('#updateNoticeslist', function () {
- it('should integrate the latest changes from the source', function (done) {
- var testList = [{
- id: 55,
- read: false,
- title: 'Futuristic Notice',
- }]
- noticeController.setNoticesList(testList)
- noticeController.updateNoticesList().then(() => {
- var newList = noticeController.getNoticesList()
- assert.ok(newList[0].id === 55)
- assert.ok(newList[1])
- done()
- })
- })
- it('should not overwrite any existing fields', function (done) {
- var testList = [{
- id: 0,
- read: false,
- title: 'Futuristic Notice',
- }]
- noticeController.setNoticesList(testList)
- var newList = noticeController.getNoticesList()
- assert.equal(newList[0].id, 0)
- assert.equal(newList[0].title, 'Futuristic Notice')
- assert.equal(newList.length, 1)
- done()
- })
- })
-
describe('#markNoticeRead', function () {
it('should mark a notice as read', function (done) {
var testList = [{
@@ -86,7 +44,7 @@ describe('notice-controller', function () {
})
})
- describe('#getLatestUnreadNotice', function () {
+ describe('#getNextUnreadNotice', function () {
it('should retrieve the latest unread notice', function (done) {
var testList = [
{id: 0, read: true, title: 'Past Notice'},
@@ -94,8 +52,8 @@ describe('notice-controller', function () {
{id: 2, read: false, title: 'Future Notice'},
]
noticeController.setNoticesList(testList)
- var latestUnread = noticeController.getLatestUnreadNotice()
- assert.equal(latestUnread.id, 2)
+ var latestUnread = noticeController.getNextUnreadNotice()
+ assert.equal(latestUnread.id, 1)
done()
})
it('should return undefined if no unread notices exist.', function (done) {
@@ -105,7 +63,7 @@ describe('notice-controller', function () {
{id: 2, read: true, title: 'Future Notice'},
]
noticeController.setNoticesList(testList)
- var latestUnread = noticeController.getLatestUnreadNotice()
+ var latestUnread = noticeController.getNextUnreadNotice()
assert.ok(!latestUnread)
done()
})