mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-11-22 18:00:18 +01:00
Merge branch 'develop' into Version-v10.22.0
This commit is contained in:
commit
47736bd571
@ -105,6 +105,7 @@ describe('Address Book', function () {
|
||||
const recipientRowTitle = await driver.findElement(
|
||||
'.send__select-recipient-wrapper__group-item__title',
|
||||
);
|
||||
|
||||
const recipientRowTitleString = await recipientRowTitle.getText();
|
||||
assert.equal(recipientRowTitleString, 'Test Name 1');
|
||||
await driver.clickElement(
|
||||
@ -135,4 +136,107 @@ describe('Address Book', function () {
|
||||
},
|
||||
);
|
||||
});
|
||||
it('Edit entry in address book', async function () {
|
||||
await withFixtures(
|
||||
{
|
||||
fixtures: new FixtureBuilder()
|
||||
.withAddressBookController({
|
||||
addressBook: {
|
||||
'0x539': {
|
||||
'0x2f318C334780961FB129D2a6c30D0763d9a5C970': {
|
||||
address: '0x2f318C334780961FB129D2a6c30D0763d9a5C970',
|
||||
chainId: '0x539',
|
||||
isEns: false,
|
||||
memo: '',
|
||||
name: 'Test Name 1',
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
.build(),
|
||||
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);
|
||||
|
||||
await driver.clickElement('.identicon__address-wrapper');
|
||||
await driver.clickElement({ text: 'Settings', tag: 'div' });
|
||||
await driver.clickElement({ text: 'Contacts', tag: 'div' });
|
||||
await driver.clickElement('[data-testid="recipient"]');
|
||||
|
||||
await driver.clickElement({ text: 'Edit', tag: 'button' });
|
||||
const inputUsername = await driver.findElement('#nickname');
|
||||
await inputUsername.fill('Test Name Edit');
|
||||
|
||||
const inputAddress = await driver.findElement('#address');
|
||||
await inputAddress.fill('0x74cE91B75935D6Bedc27eE002DeFa566c5946f74');
|
||||
|
||||
await driver.clickElement('[data-testid="page-container-footer-next"]');
|
||||
|
||||
const recipientUsername = await driver.findElement({
|
||||
text: 'Test Name Edit',
|
||||
tag: 'div',
|
||||
});
|
||||
assert.equal(
|
||||
await recipientUsername.getText(),
|
||||
'Test Name Edit',
|
||||
'Username is not edited correctly',
|
||||
);
|
||||
|
||||
const recipientAddress = await driver.findElement(
|
||||
'.send__select-recipient-wrapper__group-item__subtitle',
|
||||
);
|
||||
assert.equal(
|
||||
await recipientAddress.getText(),
|
||||
'0x74cE...6f74',
|
||||
'Recipient address is not edited correctly',
|
||||
);
|
||||
},
|
||||
);
|
||||
});
|
||||
it('Deletes existing entry from address book', async function () {
|
||||
await withFixtures(
|
||||
{
|
||||
fixtures: new FixtureBuilder()
|
||||
.withAddressBookController({
|
||||
addressBook: {
|
||||
'0x539': {
|
||||
'0x2f318C334780961FB129D2a6c30D0763d9a5C970': {
|
||||
address: '0x2f318C334780961FB129D2a6c30D0763d9a5C970',
|
||||
chainId: '0x539',
|
||||
isEns: false,
|
||||
memo: '',
|
||||
name: 'Test Name 1',
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
.build(),
|
||||
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);
|
||||
|
||||
await driver.clickElement('.identicon__address-wrapper');
|
||||
await driver.clickElement({ text: 'Settings', tag: 'div' });
|
||||
await driver.clickElement({ text: 'Contacts', tag: 'div' });
|
||||
|
||||
await driver.clickElement({ text: 'Test Name 1', tag: 'div' });
|
||||
await driver.clickElement({ text: 'Edit', tag: 'button' });
|
||||
await driver.clickElement({ text: 'Delete account', tag: 'a' });
|
||||
// it checks if account is deleted
|
||||
const contact = await driver.findElement(
|
||||
'.send__select-recipient-wrapper__group-item',
|
||||
);
|
||||
const exists = await driver.isElementPresent(contact);
|
||||
assert.equal(exists, false, 'Contact is not deleted');
|
||||
},
|
||||
);
|
||||
});
|
||||
});
|
||||
|
@ -43,7 +43,7 @@ export const ensInitialState = initialState;
|
||||
|
||||
const name = 'ENS';
|
||||
|
||||
let provider = null;
|
||||
let web3Provider = null;
|
||||
|
||||
const slice = createSlice({
|
||||
name,
|
||||
@ -115,7 +115,7 @@ const slice = createSlice({
|
||||
builder.addCase(CHAIN_CHANGED, (state, action) => {
|
||||
if (action.payload !== state.currentChainId) {
|
||||
state.stage = 'UNINITIALIZED';
|
||||
provider = null;
|
||||
web3Provider = null;
|
||||
}
|
||||
});
|
||||
},
|
||||
@ -142,14 +142,17 @@ export function initializeEnsSlice() {
|
||||
const ensAddress = networkMap[network];
|
||||
const networkIsSupported = Boolean(ensAddress);
|
||||
if (networkIsSupported) {
|
||||
provider = new ethers.providers.Web3Provider(global.ethereumProvider, {
|
||||
chainId: parseInt(network, 10),
|
||||
name: networkName,
|
||||
ensAddress,
|
||||
});
|
||||
web3Provider = new ethers.providers.Web3Provider(
|
||||
global.ethereumProvider,
|
||||
{
|
||||
chainId: parseInt(network, 10),
|
||||
name: networkName,
|
||||
ensAddress,
|
||||
},
|
||||
);
|
||||
dispatch(enableEnsLookup(network));
|
||||
} else {
|
||||
provider = null;
|
||||
web3Provider = null;
|
||||
dispatch(disableEnsLookup());
|
||||
}
|
||||
};
|
||||
@ -177,7 +180,13 @@ export function lookupEnsName(ensName) {
|
||||
let address;
|
||||
let error;
|
||||
try {
|
||||
address = await provider.resolveName(trimmedEnsName);
|
||||
// the writable property on the 'provider' object on the 'web3Provider' flips to false when stale
|
||||
// This helps handle the case where the provider is becomes unresponsive if/when, in MV3, the service worker dies after the ENS slice is instantiated
|
||||
const isProviderActive = web3Provider.provider?.writable;
|
||||
if (!isProviderActive) {
|
||||
await dispatch(initializeEnsSlice());
|
||||
}
|
||||
address = await web3Provider.resolveName(trimmedEnsName);
|
||||
} catch (err) {
|
||||
error = err;
|
||||
}
|
||||
|
@ -27,10 +27,7 @@
|
||||
|
||||
video {
|
||||
border-radius: 8px;
|
||||
|
||||
@include screen-md-max {
|
||||
width: 95%;
|
||||
}
|
||||
width: calc(100% - 16px);
|
||||
}
|
||||
|
||||
&__copy {
|
||||
|
@ -307,5 +307,5 @@ export function getFirstPermissionRequest(state) {
|
||||
}
|
||||
|
||||
export function getPermissions(state, origin) {
|
||||
return getPermissionSubjects(state)[origin].permissions;
|
||||
return getPermissionSubjects(state)[origin]?.permissions;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user