From 95dcf072f8452fbbc03bc5778f5f056803c943d3 Mon Sep 17 00:00:00 2001 From: mirjanaKukic <94608179+mirjanaKukic@users.noreply.github.com> Date: Wed, 2 Nov 2022 15:28:17 +0100 Subject: [PATCH] added new tests for editing and deleting contact from address book (#16014) lint fix fix added fixture builder --- test/e2e/tests/address-book.spec.js | 104 ++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) diff --git a/test/e2e/tests/address-book.spec.js b/test/e2e/tests/address-book.spec.js index 336c8e420..00f3caa2c 100644 --- a/test/e2e/tests/address-book.spec.js +++ b/test/e2e/tests/address-book.spec.js @@ -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'); + }, + ); + }); });