Skip to content

Commit

Permalink
testfix(transaction-controller): Refactor provider setup to provide c…
Browse files Browse the repository at this point in the history
…orrect providers and tracker (#4391)
  • Loading branch information
legobeat committed Jun 12, 2024
1 parent 9ae7816 commit 23743be
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 22 deletions.
46 changes: 24 additions & 22 deletions packages/transaction-controller/src/TransactionController.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -298,16 +298,18 @@ function waitForTransactionFinished(
}

const MOCK_PREFERENCES = { state: { selectedAddress: 'foo' } };
const INFURA_PROJECT_ID = '341eacb578dd44a1a049cbc5f6fd4035';
const GOERLI_PROVIDER = new HttpProvider(
`https://goerli.infura.io/v3/${INFURA_PROJECT_ID}`,
);
const MAINNET_PROVIDER = new HttpProvider(
`https://mainnet.infura.io/v3/${INFURA_PROJECT_ID}`,
);
const PALM_PROVIDER = new HttpProvider(
`https://palm-mainnet.infura.io/v3/${INFURA_PROJECT_ID}`,
);
const INFURA_PROJECT_ID = 'testinfuraid';
const HTTP_PROVIDERS = {
goerli: new HttpProvider('https://goerli.infura.io/v3/goerli-pid'),
// TODO: Investigate and address why tests break when mainet has a different INFURA_PROJECT_ID
mainnet: new HttpProvider(
`https://mainnet.infura.io/v3/${INFURA_PROJECT_ID}`,
),
linea: new HttpProvider('https://linea.infura.io/v3/linea-pid'),
lineaGoerli: new HttpProvider('https://linea-g.infura.io/v3/linea-g-pid'),
custom: new HttpProvider(`http://127.0.0.123:456/ethrpc?apiKey=foobar`),
palm: new HttpProvider('https://palm-mainnet.infura.io/v3/palm-pid'),
};

type MockNetwork = {
provider: Provider;
Expand All @@ -317,8 +319,8 @@ type MockNetwork = {
};

const MOCK_NETWORK: MockNetwork = {
provider: MAINNET_PROVIDER,
blockTracker: buildMockBlockTracker('0x102833C', MAINNET_PROVIDER),
provider: HTTP_PROVIDERS.goerli,
blockTracker: buildMockBlockTracker('0x102833C', HTTP_PROVIDERS.goerli),
state: {
selectedNetworkClientId: NetworkType.goerli,
networksMetadata: {
Expand All @@ -337,8 +339,8 @@ const MOCK_NETWORK: MockNetwork = {
subscribe: () => undefined,
};
const MOCK_NETWORK_WITHOUT_CHAIN_ID: MockNetwork = {
provider: GOERLI_PROVIDER,
blockTracker: buildMockBlockTracker('0x102833C', GOERLI_PROVIDER),
provider: HTTP_PROVIDERS.goerli,
blockTracker: buildMockBlockTracker('0x102833C', HTTP_PROVIDERS.goerli),
state: {
selectedNetworkClientId: NetworkType.goerli,
networksMetadata: {
Expand All @@ -355,8 +357,8 @@ const MOCK_NETWORK_WITHOUT_CHAIN_ID: MockNetwork = {
subscribe: () => undefined,
};
const MOCK_MAINNET_NETWORK: MockNetwork = {
provider: MAINNET_PROVIDER,
blockTracker: buildMockBlockTracker('0x102833C', MAINNET_PROVIDER),
provider: HTTP_PROVIDERS.mainnet,
blockTracker: buildMockBlockTracker('0x102833C', HTTP_PROVIDERS.mainnet),
state: {
selectedNetworkClientId: NetworkType.mainnet,
networksMetadata: {
Expand All @@ -376,8 +378,8 @@ const MOCK_MAINNET_NETWORK: MockNetwork = {
};

const MOCK_LINEA_MAINNET_NETWORK: MockNetwork = {
provider: PALM_PROVIDER,
blockTracker: buildMockBlockTracker('0xA6EDFC', PALM_PROVIDER),
provider: HTTP_PROVIDERS.linea,
blockTracker: buildMockBlockTracker('0xA6EDFC', HTTP_PROVIDERS.linea),
state: {
selectedNetworkClientId: NetworkType['linea-mainnet'],
networksMetadata: {
Expand All @@ -397,8 +399,8 @@ const MOCK_LINEA_MAINNET_NETWORK: MockNetwork = {
};

const MOCK_LINEA_GOERLI_NETWORK: MockNetwork = {
provider: PALM_PROVIDER,
blockTracker: buildMockBlockTracker('0xA6EDFC', PALM_PROVIDER),
provider: HTTP_PROVIDERS.lineaGoerli,
blockTracker: buildMockBlockTracker('0xA6EDFC', HTTP_PROVIDERS.lineaGoerli),
state: {
selectedNetworkClientId: NetworkType['linea-goerli'],
networksMetadata: {
Expand All @@ -418,8 +420,8 @@ const MOCK_LINEA_GOERLI_NETWORK: MockNetwork = {
};

const MOCK_CUSTOM_NETWORK: MockNetwork = {
provider: PALM_PROVIDER,
blockTracker: buildMockBlockTracker('0xA6EDFC', PALM_PROVIDER),
provider: HTTP_PROVIDERS.palm,
blockTracker: buildMockBlockTracker('0xA6EDFC', HTTP_PROVIDERS.palm),
state: {
selectedNetworkClientId: 'uuid-1',
networksMetadata: {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -220,6 +220,16 @@ function newMultichainTrackingHelper(
describe('MultichainTrackingHelper', () => {
beforeEach(() => {
jest.resetAllMocks();

for (const network of [
'mainnet',
'goerli',
'sepolia',
'customNetworkClientId-1',
] as const) {
MOCK_BLOCK_TRACKERS[network] = buildMockBlockTracker(network);
MOCK_PROVIDERS[network] = buildMockProvider(network);
}
});

describe('onNetworkStateChange', () => {
Expand Down

0 comments on commit 23743be

Please sign in to comment.