mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-12-23 09:52:26 +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 -u
|
||||||
set -o pipefail
|
set -o pipefail
|
||||||
|
|
||||||
FIREFOX_VERSION='83.0'
|
FIREFOX_VERSION='102.0'
|
||||||
FIREFOX_BINARY="firefox-${FIREFOX_VERSION}.tar.bz2"
|
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_BINARY_URL="https://ftp.mozilla.org/pub/firefox/releases/${FIREFOX_VERSION}/linux-x86_64/en-US/${FIREFOX_BINARY}"
|
||||||
FIREFOX_PATH='/opt/firefox'
|
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);
|
const options = new chrome.Options().addArguments(args);
|
||||||
options.setProxy(proxy.manual({ https: HTTPS_PROXY_HOST }));
|
options.setProxy(proxy.manual({ https: HTTPS_PROXY_HOST }));
|
||||||
options.setAcceptInsecureCerts(true);
|
options.setAcceptInsecureCerts(true);
|
||||||
|
options.setUserPreferences({
|
||||||
|
'download.default_directory': `${process.cwd()}/test-artifacts/downloads`,
|
||||||
|
});
|
||||||
const builder = new Builder()
|
const builder = new Builder()
|
||||||
.forBrowser('chrome')
|
.forBrowser('chrome')
|
||||||
.setChromeOptions(options);
|
.setChromeOptions(options);
|
||||||
|
@ -40,6 +40,11 @@ class FirefoxDriver {
|
|||||||
const options = new firefox.Options().setProfile(templateProfile);
|
const options = new firefox.Options().setProfile(templateProfile);
|
||||||
options.setProxy(proxy.manual({ https: HTTPS_PROXY_HOST }));
|
options.setProxy(proxy.manual({ https: HTTPS_PROXY_HOST }));
|
||||||
options.setAcceptInsecureCerts(true);
|
options.setAcceptInsecureCerts(true);
|
||||||
|
options.setPreference('browser.download.folderList', 2);
|
||||||
|
options.setPreference(
|
||||||
|
'browser.download.dir',
|
||||||
|
`${process.cwd()}/test-artifacts/downloads`,
|
||||||
|
);
|
||||||
const builder = new Builder()
|
const builder = new Builder()
|
||||||
.forBrowser('firefox')
|
.forBrowser('firefox')
|
||||||
.setFirefoxOptions(options);
|
.setFirefoxOptions(options);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user