mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-11-25 03:20:23 +01:00
State logs e2e (#15123)
* download dir * state logs e2e * update ff version
This commit is contained in:
parent
dc780eeeb1
commit
4e1dbc6194
@ -4,7 +4,7 @@ set -e
|
||||
set -u
|
||||
set -o pipefail
|
||||
|
||||
FIREFOX_VERSION='83.0'
|
||||
FIREFOX_VERSION='102.0'
|
||||
FIREFOX_BINARY="firefox-${FIREFOX_VERSION}.tar.bz2"
|
||||
FIREFOX_BINARY_URL="https://ftp.mozilla.org/pub/firefox/releases/${FIREFOX_VERSION}/linux-x86_64/en-US/${FIREFOX_BINARY}"
|
||||
FIREFOX_PATH='/opt/firefox'
|
||||
|
65
test/e2e/tests/state-logs.spec.js
Normal file
65
test/e2e/tests/state-logs.spec.js
Normal file
@ -0,0 +1,65 @@
|
||||
const { strict: assert } = require('assert');
|
||||
const { promises: fs } = require('fs');
|
||||
const { convertToHexValue, withFixtures } = require('../helpers');
|
||||
|
||||
const downloadsFolder = `${process.cwd()}/test-artifacts/downloads`;
|
||||
|
||||
const createDownloadFolder = async () => {
|
||||
await fs.rm(downloadsFolder, { recursive: true, force: true });
|
||||
await fs.mkdir(downloadsFolder, { recursive: true });
|
||||
};
|
||||
|
||||
const stateLogsExist = async () => {
|
||||
try {
|
||||
const stateLogs = `${downloadsFolder}/MetaMask State Logs.json`;
|
||||
await fs.access(stateLogs);
|
||||
return true;
|
||||
} catch (e) {
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
describe('State logs', function () {
|
||||
const ganacheOptions = {
|
||||
accounts: [
|
||||
{
|
||||
secretKey:
|
||||
'0x7C9529A67102755B7E6102D6D950AC5D5863C98713805CEC576B945B15B71EAC',
|
||||
balance: convertToHexValue(25000000000000000000),
|
||||
},
|
||||
],
|
||||
};
|
||||
it('should download state logs for the account', async function () {
|
||||
await withFixtures(
|
||||
{
|
||||
fixtures: 'imported-account',
|
||||
ganacheOptions,
|
||||
title: this.test.title,
|
||||
failOnConsoleError: false,
|
||||
},
|
||||
async ({ driver }) => {
|
||||
await createDownloadFolder();
|
||||
await driver.navigate();
|
||||
await driver.fill('#password', 'correct horse battery staple');
|
||||
await driver.press('#password', driver.Key.ENTER);
|
||||
|
||||
// Download State Logs
|
||||
await driver.clickElement('.account-menu__icon');
|
||||
await driver.clickElement({ text: 'Settings', tag: 'div' });
|
||||
await driver.clickElement({ text: 'Advanced', tag: 'div' });
|
||||
await driver.clickElement({
|
||||
text: 'Download State Logs',
|
||||
tag: 'button',
|
||||
});
|
||||
|
||||
// Verify download
|
||||
let fileExists;
|
||||
await driver.wait(async () => {
|
||||
fileExists = await stateLogsExist();
|
||||
return fileExists === true;
|
||||
}, 10000);
|
||||
assert.equal(fileExists, true);
|
||||
},
|
||||
);
|
||||
});
|
||||
});
|
@ -22,6 +22,9 @@ class ChromeDriver {
|
||||
const options = new chrome.Options().addArguments(args);
|
||||
options.setProxy(proxy.manual({ https: HTTPS_PROXY_HOST }));
|
||||
options.setAcceptInsecureCerts(true);
|
||||
options.setUserPreferences({
|
||||
'download.default_directory': `${process.cwd()}/test-artifacts/downloads`,
|
||||
});
|
||||
const builder = new Builder()
|
||||
.forBrowser('chrome')
|
||||
.setChromeOptions(options);
|
||||
|
@ -40,6 +40,11 @@ class FirefoxDriver {
|
||||
const options = new firefox.Options().setProfile(templateProfile);
|
||||
options.setProxy(proxy.manual({ https: HTTPS_PROXY_HOST }));
|
||||
options.setAcceptInsecureCerts(true);
|
||||
options.setPreference('browser.download.folderList', 2);
|
||||
options.setPreference(
|
||||
'browser.download.dir',
|
||||
`${process.cwd()}/test-artifacts/downloads`,
|
||||
);
|
||||
const builder = new Builder()
|
||||
.forBrowser('firefox')
|
||||
.setFirefoxOptions(options);
|
||||
|
Loading…
Reference in New Issue
Block a user