mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-12-04 23:14:56 +01:00
6e5c2f03bf
* addding the legacy tokenlist, tuning token detection OFF by default, adding new message while importing tokens updating the controller version and calling detectNewToken on network change fixing rebase error Run yarn lavamoat:auto for updating policies updating lavamoat Deleted node modules and run again lavamoat auto fixing rebase issues updating lavamoat policies updating lavamoat after rebasing policies updating custom token warning and blocking detectedtoken link when tpken detection is off for supported networks to update the token in fetchTosync updating the contract map object Revert build-system lavamoat policy changes Move token list selection logic from components to getTokenList selector updating the tokenList Update lavamoat Fix error updating lavamoat lint fix fix unit test fail fix unit test fail lint fix fixing rebase locale error rebase fix Revert build-system policy changes temp addressing review comments * rebase fix
265 lines
9.0 KiB
JavaScript
265 lines
9.0 KiB
JavaScript
const { strict: assert } = require('assert');
|
|
const { convertToHexValue, withFixtures } = require('../helpers');
|
|
|
|
describe('Settings Search', function () {
|
|
const ganacheOptions = {
|
|
accounts: [
|
|
{
|
|
secretKey:
|
|
'0x7C9529A67102755B7E6102D6D950AC5D5863C98713805CEC576B945B15B71EAC',
|
|
balance: convertToHexValue(25000000000000000000),
|
|
},
|
|
],
|
|
};
|
|
const settingsSearch = {
|
|
general: 'Primary currency',
|
|
advanced: 'State logs',
|
|
contacts: 'Contacts',
|
|
security: 'Reveal Secret',
|
|
alerts: 'Browsing a website',
|
|
networks: 'Ethereum Mainnet',
|
|
experimental: 'Enable Enhanced Gas Fee UI',
|
|
about: 'Terms of Use',
|
|
};
|
|
|
|
it('should find element inside the General tab', 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);
|
|
|
|
await driver.clickElement('.account-menu__icon');
|
|
await driver.clickElement({ text: 'Settings', tag: 'div' });
|
|
await driver.fill('#search-settings', settingsSearch.general);
|
|
|
|
const page = 'General';
|
|
await driver.clickElement({ text: page, tag: 'span' });
|
|
assert.equal(
|
|
await driver.isElementPresent({ text: page, tag: 'div' }),
|
|
true,
|
|
`${settingsSearch.general} item does not redirect to ${page} view`,
|
|
);
|
|
},
|
|
);
|
|
});
|
|
it('should find element inside the Advanced tab', 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);
|
|
|
|
await driver.clickElement('.account-menu__icon');
|
|
await driver.clickElement({ text: 'Settings', tag: 'div' });
|
|
await driver.fill('#search-settings', settingsSearch.advanced);
|
|
|
|
// Check if element redirects to the correct page
|
|
const page = 'Advanced';
|
|
await driver.clickElement({ text: page, tag: 'span' });
|
|
assert.equal(
|
|
await driver.isElementPresent({ text: page, tag: 'div' }),
|
|
true,
|
|
`${settingsSearch.advanced} item does not redirect to ${page} view`,
|
|
);
|
|
},
|
|
);
|
|
});
|
|
it('should find element inside the Contacts tab', 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);
|
|
|
|
await driver.clickElement('.account-menu__icon');
|
|
await driver.clickElement({ text: 'Settings', tag: 'div' });
|
|
await driver.fill('#search-settings', settingsSearch.contacts);
|
|
|
|
// Check if element redirects to the correct page
|
|
const page = 'Contacts';
|
|
await driver.clickElement({ text: page, tag: 'span' });
|
|
assert.equal(
|
|
await driver.isElementPresent({ text: page, tag: 'div' }),
|
|
true,
|
|
`${settingsSearch.contacts} item does not redirect to ${page} view`,
|
|
);
|
|
},
|
|
);
|
|
});
|
|
it('should find element inside the Security tab', 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);
|
|
|
|
await driver.clickElement('.account-menu__icon');
|
|
await driver.clickElement({ text: 'Settings', tag: 'div' });
|
|
await driver.fill('#search-settings', settingsSearch.security);
|
|
|
|
// Check if element redirects to the correct page
|
|
const page = 'Security';
|
|
await driver.clickElement({ text: page, tag: 'span' });
|
|
assert.equal(
|
|
await driver.isElementPresent({ text: page, tag: 'div' }),
|
|
true,
|
|
`${settingsSearch.security} item does not redirect to ${page} view`,
|
|
);
|
|
},
|
|
);
|
|
});
|
|
it('should find element inside the Alerts tab', 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);
|
|
|
|
await driver.clickElement('.account-menu__icon');
|
|
await driver.clickElement({ text: 'Settings', tag: 'div' });
|
|
await driver.fill('#search-settings', settingsSearch.alerts);
|
|
|
|
// Check if element redirects to the correct page
|
|
const page = 'Alerts';
|
|
await driver.clickElement({ text: page, tag: 'span' });
|
|
assert.equal(
|
|
await driver.isElementPresent({ text: page, tag: 'div' }),
|
|
true,
|
|
`${settingsSearch.alerts} item does not redirect to ${page} view`,
|
|
);
|
|
},
|
|
);
|
|
});
|
|
it('should find element inside the Networks tab', 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);
|
|
|
|
await driver.clickElement('.account-menu__icon');
|
|
await driver.clickElement({ text: 'Settings', tag: 'div' });
|
|
await driver.fill('#search-settings', settingsSearch.networks);
|
|
|
|
// Check if element redirects to the correct page
|
|
const page = 'Networks';
|
|
await driver.clickElement({ text: page, tag: 'span' });
|
|
assert.equal(
|
|
await driver.isElementPresent({ text: page, tag: 'div' }),
|
|
true,
|
|
`${settingsSearch.networks} item does not redirect to ${page} view`,
|
|
);
|
|
},
|
|
);
|
|
});
|
|
it('should find element inside the Experimental tab', 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);
|
|
|
|
await driver.clickElement('.account-menu__icon');
|
|
await driver.clickElement({ text: 'Settings', tag: 'div' });
|
|
await driver.fill('#search-settings', settingsSearch.experimental);
|
|
|
|
// Check if element redirects to the correct page
|
|
const page = 'Experimental';
|
|
await driver.clickElement({ text: page, tag: 'span' });
|
|
assert.equal(
|
|
await driver.isElementPresent({ text: page, tag: 'div' }),
|
|
true,
|
|
`${settingsSearch.experimental} item not redirect to ${page} view`,
|
|
);
|
|
},
|
|
);
|
|
});
|
|
it('should find element inside the About tab', 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);
|
|
|
|
await driver.clickElement('.account-menu__icon');
|
|
await driver.clickElement({ text: 'Settings', tag: 'div' });
|
|
await driver.fill('#search-settings', settingsSearch.about);
|
|
|
|
// Check if element redirects to the correct page
|
|
const page = 'About';
|
|
await driver.clickElement({ text: page, tag: 'span' });
|
|
assert.equal(
|
|
await driver.isElementPresent({ text: page, tag: 'div' }),
|
|
true,
|
|
`${settingsSearch.about} item does not redirect to ${page} view`,
|
|
);
|
|
},
|
|
);
|
|
});
|
|
it('should display "Element not found" for a non-existing element', 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);
|
|
|
|
await driver.clickElement('.account-menu__icon');
|
|
await driver.clickElement({ text: 'Settings', tag: 'div' });
|
|
await driver.fill('#search-settings', 'Lorem ipsum');
|
|
|
|
const found = await driver.isElementPresent({
|
|
text: 'No matching results found',
|
|
tag: 'span',
|
|
});
|
|
assert.equal(found, true, 'Non existent element was found');
|
|
},
|
|
);
|
|
});
|
|
});
|