Skip to content

Commit

Permalink
test: Reorganize e2e tests repo part2 (#24238)
Browse files Browse the repository at this point in the history
<!--
Please submit this PR as a draft initially.
Do not mark it as "Ready for review" until the template has been
completely filled out, and PR status checks have passed at least once.
-->

## **Description**
Following #23398, This PR is the second part to reorganize the test/e2e
repository to create a structure that is both well-organized and easy to
navigate.

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/24238?quickstart=1)

## **Related issues**

Fixes: #23296

## **Manual testing steps**

Check if the organization is logical.

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [ ] I’ve followed [MetaMask Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md).
- [ ] I've completed the PR template to the best of my ability
- [ ] I’ve included tests if applicable
- [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [ ] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.
  • Loading branch information
chloeYue committed Apr 29, 2024
1 parent bbb372f commit 4caa85f
Show file tree
Hide file tree
Showing 112 changed files with 61 additions and 57 deletions.
2 changes: 1 addition & 1 deletion app/scripts/metamask-controller.actions.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import { PermissionsRequestNotFoundError } from '@metamask/permission-controller
import nock from 'nock';
import mockEncryptor from '../../test/lib/mock-encryptor';

const { Ganache } = require('../../test/e2e/ganache');
const { Ganache } = require('../../test/e2e/seeder/ganache');

const ganacheServer = new Ganache();

Expand Down
2 changes: 1 addition & 1 deletion app/scripts/metamask-controller.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ import { flushPromises } from '../../test/lib/timer-helpers';
import { deferredPromise } from './lib/util';
import MetaMaskController from './metamask-controller';

const { Ganache } = require('../../test/e2e/ganache');
const { Ganache } = require('../../test/e2e/seeder/ganache');

const ganacheServer = new Ganache();

Expand Down
File renamed without changes.
2 changes: 1 addition & 1 deletion test/e2e/helpers.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ const { difference } = require('lodash');
const createStaticServer = require('../../development/create-static-server');
const { tEn } = require('../lib/i18n-helpers');
const { setupMocking } = require('./mock-e2e');
const { Ganache } = require('./ganache');
const { Ganache } = require('./seeder/ganache');
const FixtureServer = require('./fixture-server');
const PhishingWarningPageServer = require('./phishing-warning-page-server');
const { buildWebDriver } = require('./webdriver');
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
const { strict: assert } = require('assert');
const { convertToHexValue, withFixtures, openDapp } = require('../helpers');
const FixtureBuilder = require('../fixture-builder');
const { convertToHexValue, withFixtures, openDapp } = require('../../helpers');
const FixtureBuilder = require('../../fixture-builder');

const WALLET_PASSWORD = 'correct horse battery staple';

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ const {
defaultGanacheOptions,
withFixtures,
unlockWallet,
} = require('../helpers');
const FixtureBuilder = require('../fixture-builder');
} = require('../../helpers');
const FixtureBuilder = require('../../fixture-builder');

describe('Lock and unlock', function () {
it('successfully unlocks after lock', async function () {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ const { Browser } = require('selenium-webdriver');
const {
getGlobalProperties,
testIntrinsic,
} = require('../../helpers/protect-intrinsics-helpers');
const { convertToHexValue, withFixtures } = require('../helpers');
const { PAGES } = require('../webdriver/driver');
const FixtureBuilder = require('../fixture-builder');
} = require('../../../helpers/protect-intrinsics-helpers');
const { convertToHexValue, withFixtures } = require('../../helpers');
const { PAGES } = require('../../webdriver/driver');
const FixtureBuilder = require('../../fixture-builder');

const isFirefox = process.env.SELENIUM_BROWSER === Browser.FIREFOX;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ const {
locateAccountBalanceDOM,
openActionMenuAndStartSendFlow,
unlockWallet,
} = require('../helpers');
const FixtureBuilder = require('../fixture-builder');
} = require('../../helpers');
const FixtureBuilder = require('../../fixture-builder');

describe('MetaMask Responsive UI', function () {
it('Creating a new wallet @no-mmi', async function () {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
const { strict: assert } = require('assert');
const { defaultGanacheOptions, withFixtures } = require('../helpers');
const FixtureBuilder = require('../fixture-builder');
const { defaultGanacheOptions, withFixtures } = require('../../helpers');
const FixtureBuilder = require('../../fixture-builder');

const lock = async (driver) => {
await driver.clickElement('[data-testid="account-options-menu-button"]');
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@ const {
largeDelayMs,
WINDOW_TITLES,
locateAccountBalanceDOM,
} = require('../helpers');
} = require('../../helpers');

const { SMART_CONTRACTS } = require('../seeder/smart-contracts');
const FixtureBuilder = require('../fixture-builder');
const { SMART_CONTRACTS } = require('../../seeder/smart-contracts');
const FixtureBuilder = require('../../fixture-builder');

describe('Deploy contract and call contract methods', function () {
const smartContract = SMART_CONTRACTS.PIGGYBANK;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ const {
openDapp,
unlockWallet,
WINDOW_TITLES,
} = require('../helpers');
const FixtureBuilder = require('../fixture-builder');
} = require('../../helpers');
const FixtureBuilder = require('../../fixture-builder');

async function validateEncryptionKey(driver, encryptionKey) {
await driver.clickElement('#getEncryptionKeyButton');
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ const {
openDapp,
DAPP_ONE_URL,
unlockWallet,
} = require('../helpers');
const FixtureBuilder = require('../fixture-builder');
} = require('../../helpers');
const FixtureBuilder = require('../../fixture-builder');

describe('eth_subscribe', function () {
it('only broadcasts subscription notifications on the page that registered the subscription', async function () {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ const {
unlockWallet,
WINDOW_TITLES,
generateGanacheOptions,
} = require('../helpers');
const { SMART_CONTRACTS } = require('../seeder/smart-contracts');
const FixtureBuilder = require('../fixture-builder');
} = require('../../helpers');
const { SMART_CONTRACTS } = require('../../seeder/smart-contracts');
const FixtureBuilder = require('../../fixture-builder');

describe('Failing contract interaction ', function () {
const smartContract = SMART_CONTRACTS.FAILING;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ const {
withFixtures,
openDapp,
unlockWallet,
} = require('../helpers');
const FixtureBuilder = require('../fixture-builder');
} = require('../../helpers');
const FixtureBuilder = require('../../fixture-builder');

describe('MetaMask', function () {
it('provider should inform dapp when switching networks', async function () {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ const {
DAPP_URL,
unlockWallet,
WINDOW_TITLES,
} = require('../helpers');
const FixtureBuilder = require('../fixture-builder');
} = require('../../helpers');
const FixtureBuilder = require('../../fixture-builder');

describe('Sign in with ethereum', function () {
it('user should be able to confirm sign in with ethereum', async function () {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ const { get, has, set, unset, cloneDeep } = require('lodash');
const { Browser } = require('selenium-webdriver');
const { format } = require('prettier');
const { isObject } = require('@metamask/utils');
const { SENTRY_UI_STATE } = require('../../../app/scripts/lib/setupSentry');
const FixtureBuilder = require('../fixture-builder');
const { convertToHexValue, withFixtures } = require('../helpers');
const { SENTRY_UI_STATE } = require('../../../../app/scripts/lib/setupSentry');
const FixtureBuilder = require('../../fixture-builder');
const { convertToHexValue, withFixtures } = require('../../helpers');

/**
* Derive a UI state field from a background state field.
Expand Down
2 changes: 1 addition & 1 deletion test/e2e/tests/metrics/swaps.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ const {
FEATURE_FLAGS_API_MOCK_RESULT,
TRADES_API_MOCK_RESULT,
NETWORKS_2_API_MOCK_RESULT,
} = require('./mock-data');
} = require('../../../data/mock-data');

const numberOfSegmentRequests = 19;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ const {
withFixtures,
regularDelayMs,
unlockWallet,
} = require('../helpers');
const FixtureBuilder = require('../fixture-builder');
} = require('../../helpers');
const FixtureBuilder = require('../../fixture-builder');

describe('Custom RPC history', function () {
it(`creates first custom RPC entry`, async function () {
Expand Down
File renamed without changes.
10 changes: 7 additions & 3 deletions test/e2e/tests/phishing-controller/phishing-detection.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ describe('Phishing Detection', function () {
});
},
dapp: true,
dappPaths: ['mock-page-with-iframe'],
dappPaths: ['./tests/phishing-controller/mock-page-with-iframe'],
dappOptions: {
numberOfDapps: 2,
},
Expand Down Expand Up @@ -114,7 +114,9 @@ describe('Phishing Detection', function () {
});
},
dapp: true,
dappPaths: ['mock-page-with-disallowed-iframe'],
dappPaths: [
'./tests/phishing-controller/mock-page-with-disallowed-iframe',
],
dappOptions: {
numberOfDapps: 2,
},
Expand Down Expand Up @@ -263,7 +265,9 @@ describe('Phishing Detection', function () {
});
},
dapp: true,
dappPaths: ['mock-page-with-disallowed-iframe'],
dappPaths: [
'./tests/phishing-controller/mock-page-with-disallowed-iframe',
],
dappOptions: {
numberOfDapps: 2,
},
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { MockttpServer } from 'mockttp';
import { mockJsonRpcResult } from '../mocks/json-rpc-result';
import { mockJsonRpcResult } from './json-rpc-result';

type RequestConfig = [
method: string,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
const { strict: assert } = require('assert');
const FixtureBuilder = require('../../fixture-builder');
const { mockServerJsonRpc } = require('../../mock-server-json-rpc');

const {
WINDOW_TITLES,
Expand All @@ -9,6 +8,7 @@ const {
unlockWallet,
withFixtures,
} = require('../../helpers');
const { mockServerJsonRpc } = require('./mocks/mock-server-json-rpc');

const bannerAlertSelector = '[data-testid="security-provider-banner-alert"]';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
const { strict: assert } = require('assert');
const FixtureBuilder = require('../../fixture-builder');
const { mockServerJsonRpc } = require('../../mock-server-json-rpc');

const {
WINDOW_TITLES,
Expand All @@ -9,6 +8,7 @@ const {
unlockWallet,
withFixtures,
} = require('../../helpers');
const { mockServerJsonRpc } = require('./mocks/mock-server-json-rpc');

const bannerAlertSelector = '[data-testid="security-provider-banner-alert"]';

Expand Down
2 changes: 1 addition & 1 deletion test/e2e/tests/ppom/ppom-blockaid-alert-metrics.spec.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
const { strict: assert } = require('assert');
const FixtureBuilder = require('../../fixture-builder');
const { mockServerJsonRpc } = require('../../mock-server-json-rpc');
const {
WINDOW_TITLES,
defaultGanacheOptions,
Expand All @@ -10,6 +9,7 @@ const {
getEventPayloads,
switchToNotificationWindow,
} = require('../../helpers');
const { mockServerJsonRpc } = require('./mocks/mock-server-json-rpc');

const selectedAddress = '0x5cfe73b6021e818b776b421b1c4db2474086a7e1';
const selectedAddressWithoutPrefix = '5cfe73b6021e818b776b421b1c4db2474086a7e1';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
const { strict: assert } = require('assert');
const FixtureBuilder = require('../../fixture-builder');
const { mockServerJsonRpc } = require('../../mock-server-json-rpc');
const {
WINDOW_TITLES,
defaultGanacheOptions,
openDapp,
unlockWallet,
withFixtures,
} = require('../../helpers');
const { mockServerJsonRpc } = require('./mocks/mock-server-json-rpc');

async function mockInfura(mockServer) {
await mockServerJsonRpc(mockServer, [
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
const { strict: assert } = require('assert');
const FixtureBuilder = require('../../fixture-builder');
const { mockServerJsonRpc } = require('../../mock-server-json-rpc');

const {
defaultGanacheOptions,
withFixtures,
sendScreenToConfirmScreen,
unlockWallet,
} = require('../../helpers');
const { mockServerJsonRpc } = require('./mocks/mock-server-json-rpc');

const bannerAlertSelector = '[data-testid="security-provider-banner-alert"]';
const mockMaliciousAddress = '0x5fbdb2315678afecb367f032d93f642f64180aa3';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
const { strict: assert } = require('assert');
const FixtureBuilder = require('../../fixture-builder');
const { mockServerJsonRpc } = require('../../mock-server-json-rpc');

const {
WINDOW_TITLES,
Expand All @@ -9,6 +8,7 @@ const {
unlockWallet,
withFixtures,
} = require('../../helpers');
const { mockServerJsonRpc } = require('./mocks/mock-server-json-rpc');

const bannerAlertSelector = '[data-testid="security-provider-banner-alert"]';

Expand Down
2 changes: 1 addition & 1 deletion test/e2e/tests/ppom/ppom-blockaid-alert.spec.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
const { strict: assert } = require('assert');
const FixtureBuilder = require('../../fixture-builder');
const { mockServerJsonRpc } = require('../../mock-server-json-rpc');

const {
WINDOW_TITLES,
Expand All @@ -10,6 +9,7 @@ const {
withFixtures,
switchToNotificationWindow,
} = require('../../helpers');
const { mockServerJsonRpc } = require('./mocks/mock-server-json-rpc');

const bannerAlertSelector = '[data-testid="security-provider-banner-alert"]';
const selectedAddress = '0x5cfe73b6021e818b776b421b1c4db2474086a7e1';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
const { strict: assert } = require('assert');
const FixtureBuilder = require('../../fixture-builder');
const { mockServerJsonRpc } = require('../../mock-server-json-rpc');

const {
WINDOW_TITLES,
Expand All @@ -9,6 +8,7 @@ const {
unlockWallet,
withFixtures,
} = require('../../helpers');
const { mockServerJsonRpc } = require('./mocks/mock-server-json-rpc');

const bannerAlertSelector = '[data-testid="security-provider-banner-alert"]';

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ const {
defaultGanacheOptions,
withFixtures,
unlockWallet,
} = require('../helpers');
const FixtureBuilder = require('../fixture-builder');
} = require('../../helpers');
const FixtureBuilder = require('../../fixture-builder');

describe('Localization', function () {
it('can correctly display Philippine peso symbol and code', async function () {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ const {
completeSRPRevealQuiz,
tapAndHoldToRevealSRP,
closeSRPReveal,
} = require('../helpers');
const FixtureBuilder = require('../fixture-builder');
const { tEn } = require('../../lib/i18n-helpers');
} = require('../../helpers');
const FixtureBuilder = require('../../fixture-builder');
const { tEn } = require('../../../lib/i18n-helpers');

describe('Reveal SRP through settings', function () {
const testPassword = 'correct horse battery staple';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ const {
defaultGanacheOptions,
withFixtures,
unlockWallet,
} = require('../helpers');
const FixtureBuilder = require('../fixture-builder');
} = require('../../helpers');
const FixtureBuilder = require('../../fixture-builder');

describe('Terms of use', function () {
it('accepts the updated terms of use @no-mmi', async function () {
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
const { strict: assert } = require('assert');
const { withFixtures, unlockWallet, openDapp } = require('../helpers');
const FixtureBuilder = require('../fixture-builder');
const createStaticServer = require('../../../development/create-static-server');
const { withFixtures, unlockWallet, openDapp } = require('../../helpers');
const FixtureBuilder = require('../../fixture-builder');
const createStaticServer = require('../../../../development/create-static-server');

const dappPort = 8080;

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 comments on commit 4caa85f

Please sign in to comment.