1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-12-23 09:52:26 +01:00
metamask-extension/test/e2e/tests/threebox.spec.js
dragana8 47e2e37712
Setting search feature - Setting component UI updates #12761 (#12920)
* updated settings page

removed unused messages

fixed width

moved icons into one folder

review comments update

removed unused strings

renamed components

removed class

added prop

updated e2e test

e2e

extracted icons

* locales fix

* update

* margin-inline
2022-02-08 13:00:20 -03:30

98 lines
3.4 KiB
JavaScript

const { strict: assert } = require('assert');
const { convertToHexValue, withFixtures, largeDelayMs } = require('../helpers');
const ThreeboxMockServer = require('../mock-3box/threebox-mock-server');
describe('Threebox', function () {
const ganacheOptions = {
accounts: [
{
secretKey:
'0x7C9529A67102755B7E6102D6D950AC5D5863C98713805CEC576B945B15B71EAC',
balance: convertToHexValue(25000000000000000000),
},
],
};
let threeboxServer;
before(async function () {
threeboxServer = new ThreeboxMockServer();
await threeboxServer.start();
});
after(async function () {
await threeboxServer.stop();
});
it('Set up data to be restored by 3box', async function () {
await withFixtures(
{
fixtures: 'imported-account',
ganacheOptions,
title: this.test.title,
},
async ({ driver }) => {
await driver.navigate();
await driver.fill('#password', 'correct horse battery staple');
await driver.press('#password', driver.Key.ENTER);
// turns on threebox syncing
await driver.clickElement('.account-menu__icon');
await driver.clickElement({ text: 'Settings', tag: 'div' });
// turns on threebox syncing
await driver.clickElement({ text: 'Advanced', tag: 'h4' });
await driver.clickElement(
'[data-testid="advanced-setting-3box"] .toggle-button div',
);
// updates settings and address book
// navigates to General settings
await driver.clickElement({ text: 'General', tag: 'h4' });
// turns on use of blockies
await driver.clickElement('.toggle-button > div');
// adds an address to the contact list
await driver.clickElement({ text: 'Contacts', tag: 'h4' });
await driver.clickElement('.address-book__link');
await driver.fill('#nickname', 'Test User Name 11');
await driver.fill(
'input[placeholder="Search, public address (0x), or ENS"]',
'0x2f318C334780961FB129D2a6c30D0763d9a5C970',
);
await driver.delay(largeDelayMs * 2);
await driver.clickElement({ text: 'Save', tag: 'button' });
await driver.findElement({ text: 'Test User Name 11', tag: 'div' });
},
);
});
it('Restore from 3box', async function () {
await withFixtures(
{
fixtures: 'threebox-enabled',
ganacheOptions,
title: this.test.title,
},
async ({ driver }) => {
await driver.navigate();
await driver.fill('#password', 'correct horse battery staple');
await driver.press('#password', driver.Key.ENTER);
// confirms the 3box restore notification
await driver.clickElement('.home-notification__accept-button');
// goes to the settings screen
await driver.clickElement('.account-menu__icon');
await driver.clickElement({ text: 'Settings', tag: 'div' });
// finds the blockies toggle turned on
const toggleLabel = await driver.findElement('.toggle-button__status');
const toggleLabelText = await toggleLabel.getText();
assert.equal(toggleLabelText, 'ON');
// finds the restored address in the contact list
await driver.clickElement({ text: 'Contacts', tag: 'h4' });
await driver.findElement({ text: 'Test User Name 11', tag: 'div' });
},
);
});
});