mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-11-25 03:20:23 +01:00
Removing EIP_1559_V2 feature flag (#13481)
This commit is contained in:
parent
9e0f6f3e3e
commit
760ed3457d
@ -3,6 +3,5 @@ PASSWORD=METAMASK PASSWORD
|
|||||||
INFURA_PROJECT_ID=00000000000
|
INFURA_PROJECT_ID=00000000000
|
||||||
SEGMENT_WRITE_KEY=
|
SEGMENT_WRITE_KEY=
|
||||||
ONBOARDING_V2=
|
ONBOARDING_V2=
|
||||||
EIP_1559_V2=
|
|
||||||
SWAPS_USE_DEV_APIS=
|
SWAPS_USE_DEV_APIS=
|
||||||
COLLECTIBLES_V1=
|
COLLECTIBLES_V1=
|
||||||
|
@ -34,7 +34,6 @@ const metamaskrc = require('rc')('metamask', {
|
|||||||
INFURA_PROD_PROJECT_ID: process.env.INFURA_PROD_PROJECT_ID,
|
INFURA_PROD_PROJECT_ID: process.env.INFURA_PROD_PROJECT_ID,
|
||||||
ONBOARDING_V2: process.env.ONBOARDING_V2,
|
ONBOARDING_V2: process.env.ONBOARDING_V2,
|
||||||
COLLECTIBLES_V1: process.env.COLLECTIBLES_V1,
|
COLLECTIBLES_V1: process.env.COLLECTIBLES_V1,
|
||||||
EIP_1559_V2: process.env.EIP_1559_V2,
|
|
||||||
SEGMENT_HOST: process.env.SEGMENT_HOST,
|
SEGMENT_HOST: process.env.SEGMENT_HOST,
|
||||||
SEGMENT_WRITE_KEY: process.env.SEGMENT_WRITE_KEY,
|
SEGMENT_WRITE_KEY: process.env.SEGMENT_WRITE_KEY,
|
||||||
SEGMENT_BETA_WRITE_KEY: process.env.SEGMENT_BETA_WRITE_KEY,
|
SEGMENT_BETA_WRITE_KEY: process.env.SEGMENT_BETA_WRITE_KEY,
|
||||||
@ -797,7 +796,6 @@ function getEnvironmentVariables({ buildType, devMode, testing }) {
|
|||||||
SWAPS_USE_DEV_APIS: process.env.SWAPS_USE_DEV_APIS === '1',
|
SWAPS_USE_DEV_APIS: process.env.SWAPS_USE_DEV_APIS === '1',
|
||||||
ONBOARDING_V2: metamaskrc.ONBOARDING_V2 === '1',
|
ONBOARDING_V2: metamaskrc.ONBOARDING_V2 === '1',
|
||||||
COLLECTIBLES_V1: metamaskrc.COLLECTIBLES_V1 === '1',
|
COLLECTIBLES_V1: metamaskrc.COLLECTIBLES_V1 === '1',
|
||||||
EIP_1559_V2: metamaskrc.EIP_1559_V2 === '1',
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8,270 +8,268 @@ const {
|
|||||||
regularDelayMs,
|
regularDelayMs,
|
||||||
} = require('../helpers');
|
} = require('../helpers');
|
||||||
|
|
||||||
if (process.env.EIP_1559_V2 === '1') {
|
describe('Editing Confirm Transaction', function () {
|
||||||
describe('Editing Confirm Transaction', function () {
|
it('allows selecting high, medium, low gas estimates on edit gas fee popover', async function () {
|
||||||
it('allows selecting high, medium, low gas estimates on edit gas fee popover', async function () {
|
const ganacheOptions = {
|
||||||
const ganacheOptions = {
|
hardfork: 'london',
|
||||||
hardfork: 'london',
|
accounts: [
|
||||||
accounts: [
|
|
||||||
{
|
|
||||||
secretKey:
|
|
||||||
'0x7C9529A67102755B7E6102D6D950AC5D5863C98713805CEC576B945B15B71EAC',
|
|
||||||
balance: convertToHexValue(25000000000000000000),
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
await withFixtures(
|
|
||||||
{
|
{
|
||||||
fixtures: 'eip-1559-v2',
|
secretKey:
|
||||||
ganacheOptions,
|
'0x7C9529A67102755B7E6102D6D950AC5D5863C98713805CEC576B945B15B71EAC',
|
||||||
title: this.test.title,
|
balance: convertToHexValue(25000000000000000000),
|
||||||
},
|
},
|
||||||
async ({ driver }) => {
|
],
|
||||||
await driver.navigate();
|
};
|
||||||
|
await withFixtures(
|
||||||
|
{
|
||||||
|
fixtures: 'eip-1559-v2',
|
||||||
|
ganacheOptions,
|
||||||
|
title: this.test.title,
|
||||||
|
},
|
||||||
|
async ({ driver }) => {
|
||||||
|
await driver.navigate();
|
||||||
|
|
||||||
await driver.fill('#password', 'correct horse battery staple');
|
await driver.fill('#password', 'correct horse battery staple');
|
||||||
await driver.press('#password', driver.Key.ENTER);
|
await driver.press('#password', driver.Key.ENTER);
|
||||||
|
|
||||||
const transactionAmounts = await driver.findElements(
|
const transactionAmounts = await driver.findElements(
|
||||||
'.currency-display-component__text',
|
'.currency-display-component__text',
|
||||||
|
);
|
||||||
|
const transactionAmount = transactionAmounts[0];
|
||||||
|
assert.equal(await transactionAmount.getText(), '2.2');
|
||||||
|
|
||||||
|
// update estimates to high
|
||||||
|
await driver.clickElement('[data-testid="edit-gas-fee-button"]');
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
await driver.clickElement('[data-testid="edit-gas-fee-item-high"]');
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
await driver.waitForSelector({ text: '🦍' });
|
||||||
|
await driver.waitForSelector({
|
||||||
|
text: 'Aggressive',
|
||||||
|
});
|
||||||
|
|
||||||
|
// update estimates to medium
|
||||||
|
await driver.clickElement('[data-testid="edit-gas-fee-button"]');
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
await driver.clickElement('[data-testid="edit-gas-fee-item-medium"]');
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
await driver.waitForSelector({ text: '🦊' });
|
||||||
|
await driver.waitForSelector({
|
||||||
|
text: 'Market',
|
||||||
|
});
|
||||||
|
|
||||||
|
// update estimates to low
|
||||||
|
await driver.clickElement('[data-testid="edit-gas-fee-button"]');
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
await driver.clickElement('[data-testid="edit-gas-fee-item-low"]');
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
await driver.waitForSelector({ text: '🐢' });
|
||||||
|
await driver.waitForSelector({
|
||||||
|
text: 'Low',
|
||||||
|
});
|
||||||
|
await driver.waitForSelector('[data-testid="low-gas-fee-alert"]');
|
||||||
|
|
||||||
|
// confirms the transaction
|
||||||
|
await driver.clickElement({ text: 'Confirm', tag: 'button' });
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
|
||||||
|
await driver.clickElement('[data-testid="home__activity-tab"]');
|
||||||
|
await driver.wait(async () => {
|
||||||
|
const confirmedTxes = await driver.findElements(
|
||||||
|
'.transaction-list__completed-transactions .transaction-list-item',
|
||||||
);
|
);
|
||||||
const transactionAmount = transactionAmounts[0];
|
return confirmedTxes.length === 1;
|
||||||
assert.equal(await transactionAmount.getText(), '2.2');
|
}, 10000);
|
||||||
|
|
||||||
// update estimates to high
|
const txValues = await driver.findElements(
|
||||||
await driver.clickElement('[data-testid="edit-gas-fee-button"]');
|
'.transaction-list-item__primary-currency',
|
||||||
await driver.delay(regularDelayMs);
|
);
|
||||||
await driver.clickElement('[data-testid="edit-gas-fee-item-high"]');
|
assert.equal(txValues.length, 1);
|
||||||
await driver.delay(regularDelayMs);
|
assert.ok(/-2.2\s*ETH/u.test(await txValues[0].getText()));
|
||||||
await driver.waitForSelector({ text: '🦍' });
|
},
|
||||||
await driver.waitForSelector({
|
);
|
||||||
text: 'Aggressive',
|
|
||||||
});
|
|
||||||
|
|
||||||
// update estimates to medium
|
|
||||||
await driver.clickElement('[data-testid="edit-gas-fee-button"]');
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
await driver.clickElement('[data-testid="edit-gas-fee-item-medium"]');
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
await driver.waitForSelector({ text: '🦊' });
|
|
||||||
await driver.waitForSelector({
|
|
||||||
text: 'Market',
|
|
||||||
});
|
|
||||||
|
|
||||||
// update estimates to low
|
|
||||||
await driver.clickElement('[data-testid="edit-gas-fee-button"]');
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
await driver.clickElement('[data-testid="edit-gas-fee-item-low"]');
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
await driver.waitForSelector({ text: '🐢' });
|
|
||||||
await driver.waitForSelector({
|
|
||||||
text: 'Low',
|
|
||||||
});
|
|
||||||
await driver.waitForSelector('[data-testid="low-gas-fee-alert"]');
|
|
||||||
|
|
||||||
// confirms the transaction
|
|
||||||
await driver.clickElement({ text: 'Confirm', tag: 'button' });
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
|
|
||||||
await driver.clickElement('[data-testid="home__activity-tab"]');
|
|
||||||
await driver.wait(async () => {
|
|
||||||
const confirmedTxes = await driver.findElements(
|
|
||||||
'.transaction-list__completed-transactions .transaction-list-item',
|
|
||||||
);
|
|
||||||
return confirmedTxes.length === 1;
|
|
||||||
}, 10000);
|
|
||||||
|
|
||||||
const txValues = await driver.findElements(
|
|
||||||
'.transaction-list-item__primary-currency',
|
|
||||||
);
|
|
||||||
assert.equal(txValues.length, 1);
|
|
||||||
assert.ok(/-2.2\s*ETH/u.test(await txValues[0].getText()));
|
|
||||||
},
|
|
||||||
);
|
|
||||||
});
|
|
||||||
|
|
||||||
it('allows accessing advance gas fee popover from edit gas fee popover', async function () {
|
|
||||||
const ganacheOptions = {
|
|
||||||
hardfork: 'london',
|
|
||||||
accounts: [
|
|
||||||
{
|
|
||||||
secretKey:
|
|
||||||
'0x7C9529A67102755B7E6102D6D950AC5D5863C98713805CEC576B945B15B71EAC',
|
|
||||||
balance: convertToHexValue(25000000000000000000),
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
await withFixtures(
|
|
||||||
{
|
|
||||||
fixtures: 'eip-1559-v2',
|
|
||||||
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);
|
|
||||||
|
|
||||||
const transactionAmounts = await driver.findElements(
|
|
||||||
'.currency-display-component__text',
|
|
||||||
);
|
|
||||||
const transactionAmount = transactionAmounts[0];
|
|
||||||
assert.equal(await transactionAmount.getText(), '2.2');
|
|
||||||
|
|
||||||
// update estimates to high
|
|
||||||
await driver.clickElement('[data-testid="edit-gas-fee-button"]');
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
await driver.clickElement('[data-testid="edit-gas-fee-item-custom"]');
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
|
|
||||||
// enter max fee
|
|
||||||
const maxBaseFee = await driver.findElement(
|
|
||||||
'[data-testid="base-fee-input"]',
|
|
||||||
);
|
|
||||||
await maxBaseFee.clear();
|
|
||||||
await maxBaseFee.sendKeys('8');
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
|
|
||||||
// enter priority fee
|
|
||||||
const priorityFee = await driver.findElement(
|
|
||||||
'[data-testid="priority-fee-input"]',
|
|
||||||
);
|
|
||||||
await priorityFee.clear();
|
|
||||||
await priorityFee.sendKeys('8');
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
|
|
||||||
// save default values
|
|
||||||
await driver.clickElement('input[type="checkbox"]');
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
|
|
||||||
// edit gas limit
|
|
||||||
await driver.clickElement('[data-testid="advanced-gas-fee-edit"]');
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
const gasLimit = await driver.findElement(
|
|
||||||
'[data-testid="gas-limit-input"]',
|
|
||||||
);
|
|
||||||
await gasLimit.clear();
|
|
||||||
await gasLimit.sendKeys('100000');
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
|
|
||||||
// Submit gas fee changes
|
|
||||||
await driver.clickElement({ text: 'Save', tag: 'button' });
|
|
||||||
|
|
||||||
// has correct updated value on the confirm screen the transaction
|
|
||||||
const editedTransactionAmounts = await driver.findElements(
|
|
||||||
'.transaction-detail-item__row .transaction-detail-item__detail-values .currency-display-component__text:last-of-type',
|
|
||||||
);
|
|
||||||
const editedTransactionAmount = editedTransactionAmounts[0];
|
|
||||||
assert.equal(await editedTransactionAmount.getText(), '0.0008');
|
|
||||||
|
|
||||||
const editedTransactionFee = editedTransactionAmounts[1];
|
|
||||||
assert.equal(await editedTransactionFee.getText(), '2.2008');
|
|
||||||
|
|
||||||
// confirms the transaction
|
|
||||||
await driver.clickElement({ text: 'Confirm', tag: 'button' });
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
|
|
||||||
await driver.clickElement('[data-testid="home__activity-tab"]');
|
|
||||||
await driver.wait(async () => {
|
|
||||||
const confirmedTxes = await driver.findElements(
|
|
||||||
'.transaction-list__completed-transactions .transaction-list-item',
|
|
||||||
);
|
|
||||||
return confirmedTxes.length === 1;
|
|
||||||
}, 10000);
|
|
||||||
|
|
||||||
const txValues = await driver.findElements(
|
|
||||||
'.transaction-list-item__primary-currency',
|
|
||||||
);
|
|
||||||
assert.equal(txValues.length, 1);
|
|
||||||
assert.ok(/-2.2\s*ETH/u.test(await txValues[0].getText()));
|
|
||||||
},
|
|
||||||
);
|
|
||||||
});
|
|
||||||
|
|
||||||
it('should use dapp suggested estimates for transaction coming from dapp', async function () {
|
|
||||||
const ganacheOptions = {
|
|
||||||
hardfork: 'london',
|
|
||||||
accounts: [
|
|
||||||
{
|
|
||||||
secretKey:
|
|
||||||
'0x7C9529A67102755B7E6102D6D950AC5D5863C98713805CEC576B945B15B71EAC',
|
|
||||||
balance: convertToHexValue(25000000000000000000),
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
await withFixtures(
|
|
||||||
{
|
|
||||||
fixtures: 'eip-1559-v2-dapp',
|
|
||||||
ganacheOptions,
|
|
||||||
title: this.test.title,
|
|
||||||
dapp: true,
|
|
||||||
},
|
|
||||||
async ({ driver }) => {
|
|
||||||
await driver.navigate();
|
|
||||||
|
|
||||||
// login to extension
|
|
||||||
await driver.fill('#password', 'correct horse battery staple');
|
|
||||||
await driver.press('#password', driver.Key.ENTER);
|
|
||||||
|
|
||||||
// open dapp and connect
|
|
||||||
await connectDappWithExtensionPopup(driver);
|
|
||||||
await driver.clickElement({ text: 'Send', tag: 'button' });
|
|
||||||
|
|
||||||
// check transaction in extension popup
|
|
||||||
const windowHandles = await getWindowHandles(driver, 3);
|
|
||||||
await driver.switchToWindow(windowHandles.popup);
|
|
||||||
await driver.delay(largeDelayMs);
|
|
||||||
await driver.waitForSelector({ text: '🌐' });
|
|
||||||
await driver.waitForSelector({
|
|
||||||
text: 'Site suggested',
|
|
||||||
});
|
|
||||||
|
|
||||||
await driver.clickElement('[data-testid="edit-gas-fee-button"]');
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
await driver.clickElement(
|
|
||||||
'[data-testid="edit-gas-fee-item-dappSuggested"]',
|
|
||||||
);
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
|
|
||||||
const transactionAmounts = await driver.findElements(
|
|
||||||
'.currency-display-component__text',
|
|
||||||
);
|
|
||||||
const transactionAmount = transactionAmounts[0];
|
|
||||||
assert.equal(await transactionAmount.getText(), '3');
|
|
||||||
|
|
||||||
// has correct updated value on the confirm screen the transaction
|
|
||||||
const editedTransactionAmounts = await driver.findElements(
|
|
||||||
'.transaction-detail-item__row .transaction-detail-item__detail-values .currency-display-component__text:last-of-type',
|
|
||||||
);
|
|
||||||
const editedTransactionAmount = editedTransactionAmounts[0];
|
|
||||||
assert.equal(await editedTransactionAmount.getText(), '0.00042');
|
|
||||||
|
|
||||||
const editedTransactionFee = editedTransactionAmounts[1];
|
|
||||||
assert.equal(await editedTransactionFee.getText(), '3.00042');
|
|
||||||
|
|
||||||
// confirms the transaction
|
|
||||||
await driver.clickElement({ text: 'Confirm', tag: 'button' });
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
|
|
||||||
// transaction should correct values in activity tab
|
|
||||||
await driver.switchToWindow(windowHandles.extension);
|
|
||||||
await driver.clickElement('[data-testid="home__activity-tab"]');
|
|
||||||
await driver.wait(async () => {
|
|
||||||
const confirmedTxes = await driver.findElements(
|
|
||||||
'.transaction-list__completed-transactions .transaction-list-item',
|
|
||||||
);
|
|
||||||
return confirmedTxes.length === 1;
|
|
||||||
}, 10000);
|
|
||||||
|
|
||||||
const txValues = await driver.findElements(
|
|
||||||
'.transaction-list-item__primary-currency',
|
|
||||||
);
|
|
||||||
assert.equal(txValues.length, 1);
|
|
||||||
assert.ok(/-3\s*ETH/u.test(await txValues[0].getText()));
|
|
||||||
},
|
|
||||||
);
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
}
|
|
||||||
|
it('allows accessing advance gas fee popover from edit gas fee popover', async function () {
|
||||||
|
const ganacheOptions = {
|
||||||
|
hardfork: 'london',
|
||||||
|
accounts: [
|
||||||
|
{
|
||||||
|
secretKey:
|
||||||
|
'0x7C9529A67102755B7E6102D6D950AC5D5863C98713805CEC576B945B15B71EAC',
|
||||||
|
balance: convertToHexValue(25000000000000000000),
|
||||||
|
},
|
||||||
|
],
|
||||||
|
};
|
||||||
|
await withFixtures(
|
||||||
|
{
|
||||||
|
fixtures: 'eip-1559-v2',
|
||||||
|
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);
|
||||||
|
|
||||||
|
const transactionAmounts = await driver.findElements(
|
||||||
|
'.currency-display-component__text',
|
||||||
|
);
|
||||||
|
const transactionAmount = transactionAmounts[0];
|
||||||
|
assert.equal(await transactionAmount.getText(), '2.2');
|
||||||
|
|
||||||
|
// update estimates to high
|
||||||
|
await driver.clickElement('[data-testid="edit-gas-fee-button"]');
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
await driver.clickElement('[data-testid="edit-gas-fee-item-custom"]');
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
|
||||||
|
// enter max fee
|
||||||
|
const maxBaseFee = await driver.findElement(
|
||||||
|
'[data-testid="base-fee-input"]',
|
||||||
|
);
|
||||||
|
await maxBaseFee.clear();
|
||||||
|
await maxBaseFee.sendKeys('8');
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
|
||||||
|
// enter priority fee
|
||||||
|
const priorityFee = await driver.findElement(
|
||||||
|
'[data-testid="priority-fee-input"]',
|
||||||
|
);
|
||||||
|
await priorityFee.clear();
|
||||||
|
await priorityFee.sendKeys('8');
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
|
||||||
|
// save default values
|
||||||
|
await driver.clickElement('input[type="checkbox"]');
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
|
||||||
|
// edit gas limit
|
||||||
|
await driver.clickElement('[data-testid="advanced-gas-fee-edit"]');
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
const gasLimit = await driver.findElement(
|
||||||
|
'[data-testid="gas-limit-input"]',
|
||||||
|
);
|
||||||
|
await gasLimit.clear();
|
||||||
|
await gasLimit.sendKeys('100000');
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
|
||||||
|
// Submit gas fee changes
|
||||||
|
await driver.clickElement({ text: 'Save', tag: 'button' });
|
||||||
|
|
||||||
|
// has correct updated value on the confirm screen the transaction
|
||||||
|
const editedTransactionAmounts = await driver.findElements(
|
||||||
|
'.transaction-detail-item__row .transaction-detail-item__detail-values .currency-display-component__text:last-of-type',
|
||||||
|
);
|
||||||
|
const editedTransactionAmount = editedTransactionAmounts[0];
|
||||||
|
assert.equal(await editedTransactionAmount.getText(), '0.0008');
|
||||||
|
|
||||||
|
const editedTransactionFee = editedTransactionAmounts[1];
|
||||||
|
assert.equal(await editedTransactionFee.getText(), '2.2008');
|
||||||
|
|
||||||
|
// confirms the transaction
|
||||||
|
await driver.clickElement({ text: 'Confirm', tag: 'button' });
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
|
||||||
|
await driver.clickElement('[data-testid="home__activity-tab"]');
|
||||||
|
await driver.wait(async () => {
|
||||||
|
const confirmedTxes = await driver.findElements(
|
||||||
|
'.transaction-list__completed-transactions .transaction-list-item',
|
||||||
|
);
|
||||||
|
return confirmedTxes.length === 1;
|
||||||
|
}, 10000);
|
||||||
|
|
||||||
|
const txValues = await driver.findElements(
|
||||||
|
'.transaction-list-item__primary-currency',
|
||||||
|
);
|
||||||
|
assert.equal(txValues.length, 1);
|
||||||
|
assert.ok(/-2.2\s*ETH/u.test(await txValues[0].getText()));
|
||||||
|
},
|
||||||
|
);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should use dapp suggested estimates for transaction coming from dapp', async function () {
|
||||||
|
const ganacheOptions = {
|
||||||
|
hardfork: 'london',
|
||||||
|
accounts: [
|
||||||
|
{
|
||||||
|
secretKey:
|
||||||
|
'0x7C9529A67102755B7E6102D6D950AC5D5863C98713805CEC576B945B15B71EAC',
|
||||||
|
balance: convertToHexValue(25000000000000000000),
|
||||||
|
},
|
||||||
|
],
|
||||||
|
};
|
||||||
|
await withFixtures(
|
||||||
|
{
|
||||||
|
fixtures: 'eip-1559-v2-dapp',
|
||||||
|
ganacheOptions,
|
||||||
|
title: this.test.title,
|
||||||
|
dapp: true,
|
||||||
|
},
|
||||||
|
async ({ driver }) => {
|
||||||
|
await driver.navigate();
|
||||||
|
|
||||||
|
// login to extension
|
||||||
|
await driver.fill('#password', 'correct horse battery staple');
|
||||||
|
await driver.press('#password', driver.Key.ENTER);
|
||||||
|
|
||||||
|
// open dapp and connect
|
||||||
|
await connectDappWithExtensionPopup(driver);
|
||||||
|
await driver.clickElement({ text: 'Send', tag: 'button' });
|
||||||
|
|
||||||
|
// check transaction in extension popup
|
||||||
|
const windowHandles = await getWindowHandles(driver, 3);
|
||||||
|
await driver.switchToWindow(windowHandles.popup);
|
||||||
|
await driver.delay(largeDelayMs);
|
||||||
|
await driver.waitForSelector({ text: '🌐' });
|
||||||
|
await driver.waitForSelector({
|
||||||
|
text: 'Site suggested',
|
||||||
|
});
|
||||||
|
|
||||||
|
await driver.clickElement('[data-testid="edit-gas-fee-button"]');
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
await driver.clickElement(
|
||||||
|
'[data-testid="edit-gas-fee-item-dappSuggested"]',
|
||||||
|
);
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
|
||||||
|
const transactionAmounts = await driver.findElements(
|
||||||
|
'.currency-display-component__text',
|
||||||
|
);
|
||||||
|
const transactionAmount = transactionAmounts[0];
|
||||||
|
assert.equal(await transactionAmount.getText(), '3');
|
||||||
|
|
||||||
|
// has correct updated value on the confirm screen the transaction
|
||||||
|
const editedTransactionAmounts = await driver.findElements(
|
||||||
|
'.transaction-detail-item__row .transaction-detail-item__detail-values .currency-display-component__text:last-of-type',
|
||||||
|
);
|
||||||
|
const editedTransactionAmount = editedTransactionAmounts[0];
|
||||||
|
assert.equal(await editedTransactionAmount.getText(), '0.00042');
|
||||||
|
|
||||||
|
const editedTransactionFee = editedTransactionAmounts[1];
|
||||||
|
assert.equal(await editedTransactionFee.getText(), '3.00042');
|
||||||
|
|
||||||
|
// confirms the transaction
|
||||||
|
await driver.clickElement({ text: 'Confirm', tag: 'button' });
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
|
||||||
|
// transaction should correct values in activity tab
|
||||||
|
await driver.switchToWindow(windowHandles.extension);
|
||||||
|
await driver.clickElement('[data-testid="home__activity-tab"]');
|
||||||
|
await driver.wait(async () => {
|
||||||
|
const confirmedTxes = await driver.findElements(
|
||||||
|
'.transaction-list__completed-transactions .transaction-list-item',
|
||||||
|
);
|
||||||
|
return confirmedTxes.length === 1;
|
||||||
|
}, 10000);
|
||||||
|
|
||||||
|
const txValues = await driver.findElements(
|
||||||
|
'.transaction-list-item__primary-currency',
|
||||||
|
);
|
||||||
|
assert.equal(txValues.length, 1);
|
||||||
|
assert.ok(/-3\s*ETH/u.test(await txValues[0].getText()));
|
||||||
|
},
|
||||||
|
);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
@ -23,6 +23,7 @@ describe('Editing Confirm Transaction', function () {
|
|||||||
fixtures: 'send-edit',
|
fixtures: 'send-edit',
|
||||||
ganacheOptions,
|
ganacheOptions,
|
||||||
title: this.test.title,
|
title: this.test.title,
|
||||||
|
failOnConsoleError: false,
|
||||||
},
|
},
|
||||||
async ({ driver }) => {
|
async ({ driver }) => {
|
||||||
await driver.navigate();
|
await driver.navigate();
|
||||||
@ -92,113 +93,112 @@ describe('Editing Confirm Transaction', function () {
|
|||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
if (process.env.EIP_1559_V2 === '1') {
|
it('goes back from confirm page to edit eth value, baseFee, priorityFee and gas limit - 1559 V2', async function () {
|
||||||
it('goes back from confirm page to edit eth value, baseFee, priorityFee and gas limit - 1559 V2', async function () {
|
const ganacheOptions = {
|
||||||
const ganacheOptions = {
|
hardfork: 'london',
|
||||||
hardfork: 'london',
|
accounts: [
|
||||||
accounts: [
|
|
||||||
{
|
|
||||||
secretKey:
|
|
||||||
'0x7C9529A67102755B7E6102D6D950AC5D5863C98713805CEC576B945B15B71EAC',
|
|
||||||
balance: convertToHexValue(25000000000000000000),
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
await withFixtures(
|
|
||||||
{
|
{
|
||||||
fixtures: 'send-edit-v2',
|
secretKey:
|
||||||
ganacheOptions,
|
'0x7C9529A67102755B7E6102D6D950AC5D5863C98713805CEC576B945B15B71EAC',
|
||||||
title: this.test.title,
|
balance: convertToHexValue(25000000000000000000),
|
||||||
},
|
},
|
||||||
async ({ driver }) => {
|
],
|
||||||
await driver.navigate();
|
};
|
||||||
|
await withFixtures(
|
||||||
|
{
|
||||||
|
fixtures: 'send-edit-v2',
|
||||||
|
ganacheOptions,
|
||||||
|
title: this.test.title,
|
||||||
|
failOnConsoleError: false,
|
||||||
|
},
|
||||||
|
async ({ driver }) => {
|
||||||
|
await driver.navigate();
|
||||||
|
|
||||||
await driver.fill('#password', 'correct horse battery staple');
|
await driver.fill('#password', 'correct horse battery staple');
|
||||||
await driver.press('#password', driver.Key.ENTER);
|
await driver.press('#password', driver.Key.ENTER);
|
||||||
|
|
||||||
const transactionAmounts = await driver.findElements(
|
const transactionAmounts = await driver.findElements(
|
||||||
'.currency-display-component__text',
|
'.currency-display-component__text',
|
||||||
|
);
|
||||||
|
const transactionAmount = transactionAmounts[0];
|
||||||
|
assert.equal(await transactionAmount.getText(), '1');
|
||||||
|
|
||||||
|
const transactionFee = transactionAmounts[1];
|
||||||
|
assert.equal(await transactionFee.getText(), '0.0000375');
|
||||||
|
|
||||||
|
await driver.clickElement(
|
||||||
|
'.confirm-page-container-header__back-button',
|
||||||
|
);
|
||||||
|
await driver.fill('.unit-input__input', '2.2');
|
||||||
|
|
||||||
|
await driver.clickElement({ text: 'Next', tag: 'button' });
|
||||||
|
|
||||||
|
// open gas fee popover
|
||||||
|
await driver.clickElement({ text: 'Edit', tag: 'button' });
|
||||||
|
|
||||||
|
// show gas limit
|
||||||
|
await driver.clickElement('[data-testid="advanced-gas-fee-edit"]');
|
||||||
|
await driver.delay(largeDelayMs);
|
||||||
|
|
||||||
|
// enter max fee
|
||||||
|
const maxBaseFee = await driver.findElement(
|
||||||
|
'[data-testid="base-fee-input"]',
|
||||||
|
);
|
||||||
|
await maxBaseFee.clear();
|
||||||
|
await maxBaseFee.sendKeys('8');
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
|
||||||
|
// enter priority fee
|
||||||
|
const priorityFee = await driver.findElement(
|
||||||
|
'[data-testid="priority-fee-input"]',
|
||||||
|
);
|
||||||
|
await priorityFee.clear();
|
||||||
|
await priorityFee.sendKeys('8');
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
|
||||||
|
// edit gas limit
|
||||||
|
const gasLimit = await driver.findElement(
|
||||||
|
'[data-testid="gas-limit-input"]',
|
||||||
|
);
|
||||||
|
await gasLimit.clear();
|
||||||
|
await gasLimit.sendKeys('100000');
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
|
||||||
|
// save default values
|
||||||
|
await driver.clickElement('input[type="checkbox"]');
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
|
||||||
|
// Submit gas fee changes
|
||||||
|
await driver.clickElement({ text: 'Save', tag: 'button' });
|
||||||
|
|
||||||
|
// has correct updated value on the confirm screen the transaction
|
||||||
|
const editedTransactionAmounts = await driver.findElements(
|
||||||
|
'.transaction-detail-item__row .transaction-detail-item__detail-values .currency-display-component__text:last-of-type',
|
||||||
|
);
|
||||||
|
const editedTransactionAmount = editedTransactionAmounts[0];
|
||||||
|
assert.equal(await editedTransactionAmount.getText(), '0.0008');
|
||||||
|
|
||||||
|
const editedTransactionFee = editedTransactionAmounts[1];
|
||||||
|
assert.equal(await editedTransactionFee.getText(), '2.2008');
|
||||||
|
|
||||||
|
// confirms the transaction
|
||||||
|
await driver.clickElement({ text: 'Confirm', tag: 'button' });
|
||||||
|
await driver.delay(regularDelayMs);
|
||||||
|
|
||||||
|
await driver.clickElement('[data-testid="home__activity-tab"]');
|
||||||
|
await driver.wait(async () => {
|
||||||
|
const confirmedTxes = await driver.findElements(
|
||||||
|
'.transaction-list__completed-transactions .transaction-list-item',
|
||||||
);
|
);
|
||||||
const transactionAmount = transactionAmounts[0];
|
return confirmedTxes.length === 1;
|
||||||
assert.equal(await transactionAmount.getText(), '1');
|
}, 10000);
|
||||||
|
|
||||||
const transactionFee = transactionAmounts[1];
|
const txValues = await driver.findElements(
|
||||||
assert.equal(await transactionFee.getText(), '0.0000375');
|
'.transaction-list-item__primary-currency',
|
||||||
|
);
|
||||||
await driver.clickElement(
|
assert.equal(txValues.length, 1);
|
||||||
'.confirm-page-container-header__back-button',
|
assert.ok(/-2.2\s*ETH/u.test(await txValues[0].getText()));
|
||||||
);
|
},
|
||||||
await driver.fill('.unit-input__input', '2.2');
|
);
|
||||||
|
});
|
||||||
await driver.clickElement({ text: 'Next', tag: 'button' });
|
|
||||||
|
|
||||||
// open gas fee popover
|
|
||||||
await driver.clickElement({ text: 'Edit', tag: 'button' });
|
|
||||||
|
|
||||||
// show gas limit
|
|
||||||
await driver.clickElement('[data-testid="advanced-gas-fee-edit"]');
|
|
||||||
await driver.delay(largeDelayMs);
|
|
||||||
|
|
||||||
// enter max fee
|
|
||||||
const maxBaseFee = await driver.findElement(
|
|
||||||
'[data-testid="base-fee-input"]',
|
|
||||||
);
|
|
||||||
await maxBaseFee.clear();
|
|
||||||
await maxBaseFee.sendKeys('8');
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
|
|
||||||
// enter priority fee
|
|
||||||
const priorityFee = await driver.findElement(
|
|
||||||
'[data-testid="priority-fee-input"]',
|
|
||||||
);
|
|
||||||
await priorityFee.clear();
|
|
||||||
await priorityFee.sendKeys('8');
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
|
|
||||||
// edit gas limit
|
|
||||||
const gasLimit = await driver.findElement(
|
|
||||||
'[data-testid="gas-limit-input"]',
|
|
||||||
);
|
|
||||||
await gasLimit.clear();
|
|
||||||
await gasLimit.sendKeys('100000');
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
|
|
||||||
// save default values
|
|
||||||
await driver.clickElement('input[type="checkbox"]');
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
|
|
||||||
// Submit gas fee changes
|
|
||||||
await driver.clickElement({ text: 'Save', tag: 'button' });
|
|
||||||
|
|
||||||
// has correct updated value on the confirm screen the transaction
|
|
||||||
const editedTransactionAmounts = await driver.findElements(
|
|
||||||
'.transaction-detail-item__row .transaction-detail-item__detail-values .currency-display-component__text:last-of-type',
|
|
||||||
);
|
|
||||||
const editedTransactionAmount = editedTransactionAmounts[0];
|
|
||||||
assert.equal(await editedTransactionAmount.getText(), '0.0008');
|
|
||||||
|
|
||||||
const editedTransactionFee = editedTransactionAmounts[1];
|
|
||||||
assert.equal(await editedTransactionFee.getText(), '2.2008');
|
|
||||||
|
|
||||||
// confirms the transaction
|
|
||||||
await driver.clickElement({ text: 'Confirm', tag: 'button' });
|
|
||||||
await driver.delay(regularDelayMs);
|
|
||||||
|
|
||||||
await driver.clickElement('[data-testid="home__activity-tab"]');
|
|
||||||
await driver.wait(async () => {
|
|
||||||
const confirmedTxes = await driver.findElements(
|
|
||||||
'.transaction-list__completed-transactions .transaction-list-item',
|
|
||||||
);
|
|
||||||
return confirmedTxes.length === 1;
|
|
||||||
}, 10000);
|
|
||||||
|
|
||||||
const txValues = await driver.findElements(
|
|
||||||
'.transaction-list-item__primary-currency',
|
|
||||||
);
|
|
||||||
assert.equal(txValues.length, 1);
|
|
||||||
assert.ok(/-2.2\s*ETH/u.test(await txValues[0].getText()));
|
|
||||||
},
|
|
||||||
);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
@ -26,6 +26,7 @@ jest.mock('../../../../store/actions', () => ({
|
|||||||
removePollingTokenFromAppState: jest.fn(),
|
removePollingTokenFromAppState: jest.fn(),
|
||||||
setAdvancedGasFee: jest.fn(),
|
setAdvancedGasFee: jest.fn(),
|
||||||
updateEventFragment: jest.fn(),
|
updateEventFragment: jest.fn(),
|
||||||
|
createTransactionEventFragment: jest.fn(),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const render = (defaultGasParams, contextParams) => {
|
const render = (defaultGasParams, contextParams) => {
|
||||||
|
@ -17,6 +17,7 @@ jest.mock('../../../store/actions', () => ({
|
|||||||
.mockImplementation(() => Promise.resolve()),
|
.mockImplementation(() => Promise.resolve()),
|
||||||
addPollingTokenToAppState: jest.fn(),
|
addPollingTokenToAppState: jest.fn(),
|
||||||
removePollingTokenFromAppState: jest.fn(),
|
removePollingTokenFromAppState: jest.fn(),
|
||||||
|
createTransactionEventFragment: jest.fn(),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
jest.mock('../../../contexts/transaction-modal', () => ({
|
jest.mock('../../../contexts/transaction-modal', () => ({
|
||||||
|
@ -22,6 +22,7 @@ jest.mock('../../../store/actions', () => ({
|
|||||||
addPollingTokenToAppState: jest.fn(),
|
addPollingTokenToAppState: jest.fn(),
|
||||||
removePollingTokenFromAppState: jest.fn(),
|
removePollingTokenFromAppState: jest.fn(),
|
||||||
updateTransaction: () => ({ type: 'UPDATE_TRANSACTION_PARAMS' }),
|
updateTransaction: () => ({ type: 'UPDATE_TRANSACTION_PARAMS' }),
|
||||||
|
createTransactionEventFragment: jest.fn(),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
jest.mock('../../../contexts/transaction-modal', () => ({
|
jest.mock('../../../contexts/transaction-modal', () => ({
|
||||||
|
@ -41,6 +41,7 @@ describe('Confirm Page Container Container Test', () => {
|
|||||||
chainId: 'test',
|
chainId: 'test',
|
||||||
identities: [],
|
identities: [],
|
||||||
featureFlags: {},
|
featureFlags: {},
|
||||||
|
enableEIP1559V2NoticeDismissed: true,
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -20,10 +20,6 @@ import { setEnableEIP1559V2NoticeDismissed } from '../../../../store/actions';
|
|||||||
import { getEnableEIP1559V2NoticeDismissed } from '../../../../ducks/metamask/metamask';
|
import { getEnableEIP1559V2NoticeDismissed } from '../../../../ducks/metamask/metamask';
|
||||||
import { getEIP1559V2Enabled } from '../../../../selectors';
|
import { getEIP1559V2Enabled } from '../../../../selectors';
|
||||||
|
|
||||||
const EIP_1559_V2_ENABLED =
|
|
||||||
// This is a string in unit tests but is a boolean in the browser
|
|
||||||
process.env.EIP_1559_V2 === true || process.env.EIP_1559_V2 === 'true';
|
|
||||||
|
|
||||||
export default function EnableEIP1559V2Notice({ isFirstAlert }) {
|
export default function EnableEIP1559V2Notice({ isFirstAlert }) {
|
||||||
const t = useI18nContext();
|
const t = useI18nContext();
|
||||||
const history = useHistory();
|
const history = useHistory();
|
||||||
@ -32,11 +28,7 @@ export default function EnableEIP1559V2Notice({ isFirstAlert }) {
|
|||||||
);
|
);
|
||||||
const eip1559V2Enabled = useSelector(getEIP1559V2Enabled);
|
const eip1559V2Enabled = useSelector(getEIP1559V2Enabled);
|
||||||
|
|
||||||
if (
|
if (eip1559V2Enabled || enableEIP1559V2NoticeDismissed) {
|
||||||
!EIP_1559_V2_ENABLED ||
|
|
||||||
eip1559V2Enabled ||
|
|
||||||
enableEIP1559V2NoticeDismissed
|
|
||||||
) {
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -22,6 +22,7 @@ jest.mock('../../../store/actions', () => ({
|
|||||||
.fn()
|
.fn()
|
||||||
.mockImplementation(() => Promise.resolve()),
|
.mockImplementation(() => Promise.resolve()),
|
||||||
addPollingTokenToAppState: jest.fn(),
|
addPollingTokenToAppState: jest.fn(),
|
||||||
|
createTransactionEventFragment: jest.fn(),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const render = ({ componentProps, contextProps } = {}) => {
|
const render = ({ componentProps, contextProps } = {}) => {
|
||||||
|
@ -15,6 +15,7 @@ jest.mock('../../../store/actions', () => ({
|
|||||||
.fn()
|
.fn()
|
||||||
.mockImplementation(() => Promise.resolve()),
|
.mockImplementation(() => Promise.resolve()),
|
||||||
addPollingTokenToAppState: jest.fn(),
|
addPollingTokenToAppState: jest.fn(),
|
||||||
|
createTransactionEventFragment: jest.fn(),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
jest.mock('../../../contexts/transaction-modal', () => ({
|
jest.mock('../../../contexts/transaction-modal', () => ({
|
||||||
|
@ -18,6 +18,7 @@ jest.mock('../../../../store/actions', () => ({
|
|||||||
getGasFeeTimeEstimate: jest
|
getGasFeeTimeEstimate: jest
|
||||||
.fn()
|
.fn()
|
||||||
.mockImplementation(() => Promise.resolve('unknown')),
|
.mockImplementation(() => Promise.resolve('unknown')),
|
||||||
|
createTransactionEventFragment: jest.fn(),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const MOCK_FEE_ESTIMATE = {
|
const MOCK_FEE_ESTIMATE = {
|
||||||
|
@ -18,6 +18,7 @@ jest.mock('../../../store/actions', () => ({
|
|||||||
.fn()
|
.fn()
|
||||||
.mockImplementation(() => Promise.resolve()),
|
.mockImplementation(() => Promise.resolve()),
|
||||||
addPollingTokenToAppState: jest.fn(),
|
addPollingTokenToAppState: jest.fn(),
|
||||||
|
createTransactionEventFragment: jest.fn(),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const render = ({ componentProps, contextProps } = {}) => {
|
const render = ({ componentProps, contextProps } = {}) => {
|
||||||
|
@ -1,10 +1,31 @@
|
|||||||
import { useCallback } from 'react';
|
import { useCallback, useEffect } from 'react';
|
||||||
|
import { useSelector } from 'react-redux';
|
||||||
|
|
||||||
import { useGasFeeContext } from '../contexts/gasFee';
|
import { useGasFeeContext } from '../contexts/gasFee';
|
||||||
import { updateEventFragment } from '../store/actions';
|
import {
|
||||||
|
createTransactionEventFragment,
|
||||||
|
updateEventFragment,
|
||||||
|
} from '../store/actions';
|
||||||
|
import { selectMatchingFragment } from '../selectors';
|
||||||
|
import { TRANSACTION_EVENTS } from '../../shared/constants/transaction';
|
||||||
|
|
||||||
export const useTransactionEventFragment = () => {
|
export const useTransactionEventFragment = () => {
|
||||||
const { transaction } = useGasFeeContext();
|
const { transaction } = useGasFeeContext();
|
||||||
|
const fragment = useSelector((state) =>
|
||||||
|
selectMatchingFragment(state, {
|
||||||
|
fragmentOptions: {},
|
||||||
|
existingId: `transaction-added-${transaction?.id}`,
|
||||||
|
}),
|
||||||
|
);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (!fragment && transaction) {
|
||||||
|
createTransactionEventFragment(
|
||||||
|
transaction.id,
|
||||||
|
TRANSACTION_EVENTS.APPROVED,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}, [fragment, transaction]);
|
||||||
|
|
||||||
const updateTransactionEventFragment = useCallback(
|
const updateTransactionEventFragment = useCallback(
|
||||||
(params) => {
|
(params) => {
|
||||||
|
@ -148,12 +148,6 @@ export default class ExperimentalTab extends PureComponent {
|
|||||||
}
|
}
|
||||||
|
|
||||||
renderEIP1559V2EnabledToggle() {
|
renderEIP1559V2EnabledToggle() {
|
||||||
const EIP_1559_V2_ENABLED =
|
|
||||||
// This is a string in unit tests but is a boolean in the browser
|
|
||||||
process.env.EIP_1559_V2 === true || process.env.EIP_1559_V2 === 'true';
|
|
||||||
if (!EIP_1559_V2_ENABLED) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
const { t } = this.context;
|
const { t } = this.context;
|
||||||
const { eip1559V2Enabled, setEIP1559V2Enabled } = this.props;
|
const { eip1559V2Enabled, setEIP1559V2Enabled } = this.props;
|
||||||
|
|
||||||
|
@ -63,6 +63,7 @@ const generateUseSelectorRouter = () => (selector) => {
|
|||||||
setBackgroundConnection({
|
setBackgroundConnection({
|
||||||
getGasFeeTimeEstimate: jest.fn(),
|
getGasFeeTimeEstimate: jest.fn(),
|
||||||
getGasFeeEstimatesAndStartPolling: jest.fn(),
|
getGasFeeEstimatesAndStartPolling: jest.fn(),
|
||||||
|
createTransactionEventFragment: jest.fn(),
|
||||||
});
|
});
|
||||||
|
|
||||||
const createProps = (customProps = {}) => {
|
const createProps = (customProps = {}) => {
|
||||||
|
@ -3108,6 +3108,13 @@ export function createEventFragment(options) {
|
|||||||
return promisifiedBackground.createEventFragment(options);
|
return promisifiedBackground.createEventFragment(options);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function createTransactionEventFragment(transactionId, event) {
|
||||||
|
return promisifiedBackground.createTransactionEventFragment(
|
||||||
|
transactionId,
|
||||||
|
event,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
export function updateEventFragment(id, payload) {
|
export function updateEventFragment(id, payload) {
|
||||||
return promisifiedBackground.updateEventFragment(id, payload);
|
return promisifiedBackground.updateEventFragment(id, payload);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user