or setInputStatus('visible')}
>
{t('Send using second passphrase right away')}
diff --git a/src/components/shared/transactionsTable/transactionRow.js b/src/components/shared/transactionsTable/transactionRow.js
index 299406b83c..0ae9c8f05d 100644
--- a/src/components/shared/transactionsTable/transactionRow.js
+++ b/src/components/shared/transactionsTable/transactionRow.js
@@ -22,7 +22,7 @@ const TransactionRow = ({
component="transactionDetails"
data={{ transactionId: data.id, token: tokenMap.LSK.key }}
>
-
+
-
+ (
{
- cy.get(ss[elementName]).scrollTo(position, { ensureScrollable: false });
+Given(/^I scroll to (.*?)$/, (position) => {
+ cy.get('.scrollContainer').scrollTo(position, { ensureScrollable: false });
});
Then(/^I should see pending transaction$/, function () {
@@ -147,21 +147,12 @@ Then(/^The latest transaction is (.*?)$/, function (transactionType) {
case 'register delegate':
cy.get(`${ss.transactionRow} ${ss.transactionAddress}`).eq(0).contains('Register delegate');
break;
- case 'register multisignature group':
- cy.get(`${ss.transactionRow} ${ss.transactionAddress}`).eq(0).contains('Register multisig. group');
- break;
case 'vote':
cy.get(`${ss.transactionRow} ${ss.transactionAddress}`).eq(0).contains('Vote');
break;
}
});
-Then(/^The latest transaction in monitor is sent by (.*?) and recipient is (.*?)$/, function (sender, recipient) {
- cy.wait(1000);
- cy.get(`${ss.transactionRowSender}`).eq(0).contains(sender);
- cy.get(`${ss.transactionRowRecipient}`).eq(0).contains(recipient);
-});
-
Then(/^I should be on (.*?) page$/, function (pageName) {
switch (pageName.toLowerCase()) {
case 'tx details':
@@ -181,10 +172,6 @@ Then(/^I should see (.*?)$/, function (elementName) {
cy.get(ss[elementName]).should('be.visible');
});
-Then(/^(.*?) should not exist$/, function (elementName) {
- cy.get(ss[elementName]).should('not.exist');
-});
-
Then(/^I should be on (.*?) page of (.*?)$/, function (pageName, identifier) {
switch (pageName.toLowerCase()) {
case 'account':
diff --git a/test/cypress/features/multiSignTx.feature b/test/cypress/features/multiSignTx.feature
deleted file mode 100644
index 2de501fce3..0000000000
--- a/test/cypress/features/multiSignTx.feature
+++ /dev/null
@@ -1,121 +0,0 @@
-Feature: Multisignature transaction
-
- Scenario: Add funds to account2P
- Given I login as genesis on devnet
- Given I wait 1 seconds
- Given I am on Wallet page
- Then I click on sendLink
- When I paste lskwunwxqmss9w3mtuvzgbsfy665cz4eo3rd2mxdp in recipientInput field
- And I fill 10 in amountInput field
- And I go to transfer confirmation
- And I click on sendButton
- And I click on closeDialog
-
- Scenario: Register multisignature group (Mandatory, Mandatory)
- Given I login as account2P on devnet
- And I wait 10 seconds
- Given I am on wallet page
- When I click on accountInfoMsign
- When I clear input multisignatureEditorInput
- And I fill 2 in multisignatureEditorInput field
- Then I enter the publicKey of account2P at input 1
- Then I enter the publicKey of delegate at input 2
- When I click on sendButton
- When I click on confirmBtn
- Then msignSendButton should not exist
- Then I should see downloadButton
- Then I should see copyButton
- And I click on copyButton
- Then I should have the transaction RegisterSecondPassphraseTx in the clipboard
-
- Scenario: Sign transaction and send transaction (Mandatory, Mandatory)
- Given I login as delegate on devnet
- And I wait 1 seconds
- When I click on signMultiSignTransactionToggle
- Then I paste transaction RegisterSecondPassphraseTx
- When I click on confirmBtn
- Then I confirm data of RegisterSecondPassphraseTx
- When I click on signBtn
- Then I should see downloadButton
- Then I should see copyButton
- Then I should see msignSendButton
- And I click on msignSendButton
- And I wait 5 seconds
- And I click on closeDialog
- When I click on searchIcon
- And I search for account lskwunwxqmss9w3mtuvzgbsfy665cz4eo3rd2mxdp
- Then I click on searchAccountRow
- Then I should be on Account page of lskwun...2mxdp
- Then The latest transaction is register multisignature group
-
- Scenario: Send transaction using second passphrase (Mandatory, Mandatory)
- Given I login as account2P on devnet
- And I wait 1 seconds
- Given I am on wallet page
- Then I click on sendLink
- When I paste lsks6wh4zqfd8wyka3rj243rshcdqyug9gyvehxwz in recipientInput field
- And I fill 1 in amountInput field
- And I go to transfer confirmation
- Given I scroll from summary to bottom
- When I click on useSecondPassphraseBtn
- Then I input second passphrase
- And I click on sendButton
- Then I should see downloadButton
- Then I should see copyButton
- Then I should see msignSendButton
- And I click on msignSendButton
- Then submittedTransactionMessage should be visible
- And I click on closeDialog
- Then I wait 5 seconds
- Then The latest transaction is transfer to lsks6w...ehxwz
-
- Scenario: Register multisignature group (Mandatory, Optional, Optional, 2 signatures)
- Given I login as multiSig_candidate on devnet
- And I wait 1 seconds
- Given I am on wallet page
- When I click on accountInfoMsign
- When I clear input multisignatureEditorInput
- And I fill 2 in multisignatureEditorInput field
- When I click on addNewMembers
- Then I enter the publicKey of multiSig_candidate at input 1
- Then I enter the publicKey of genesis at input 2
- Then I enter the publicKey of delegate at input 3
- Then I set 2 inputs as optional
- When I click on sendButton
- When I click on confirmBtn
- Then msignSendButton should not exist
- Then I should see downloadButton
- Then I should see copyButton
- And I click on copyButton
- Then I should have the transaction RegisterMultiSignGroupTx_second_sign in the clipboard
-
- Scenario: Sign transaction (Mandatory, Optional, Optional, 2 signatures)
- Given I login as genesis on devnet
- And I wait 1 seconds
- When I click on signMultiSignTransactionToggle
- Then I paste transaction RegisterMultiSignGroupTx_second_sign
- When I click on confirmBtn
- Then I confirm data of RegisterMultiSignGroupTx_second_sign
- When I click on signBtn
- Then msignSendButton should not exist
- Then I should see downloadButton
- Then I should see copyButton
- And I click on copyButton
- Then I should have the transaction RegisterMultiSignGroupTx_third_sign in the clipboard
-
- Scenario: Send transaction (Mandatory, Optional, Optional, 2 signatures)
- Given I login as delegate on devnet
- And I wait 1 seconds
- When I click on signMultiSignTransactionToggle
- Then I paste transaction RegisterMultiSignGroupTx_third_sign
- When I click on confirmBtn
- Then I confirm data of RegisterMultiSignGroupTx_third_sign
- When I click on signBtn
- Then I should see downloadButton
- Then I should see copyButton
- Then I should see msignSendButton
- And I click on msignSendButton
- And I click on closeDialog
- And I wait 12 seconds
- Given I am on transactions page
- Then The latest transaction in monitor is sent by lsks6w...ehxwz and recipient is Register multisignature group
diff --git a/test/cypress/features/multiSignTx/multiSignTx.js b/test/cypress/features/multiSignTx/multiSignTx.js
deleted file mode 100644
index 0fbdda4b06..0000000000
--- a/test/cypress/features/multiSignTx/multiSignTx.js
+++ /dev/null
@@ -1,92 +0,0 @@
-/* eslint-disable */
-import { Then } from 'cypress-cucumber-preprocessor/steps';
-import { accounts, ss } from '../../../constants';
-import { multiSignatureTxs } from '../../utils/mockTx';
-
-Then(/^I enter the publicKey of ([^\s]+) at input ([\w]+)$/, function (accountName, index) {
- cy.get(ss.msignPkInput).eq(index - 1).type(accounts[accountName].summary.publicKey);
-});
-
-Then(/^I set ([\w]+) inputs as optional$/, function (numOfOptionals) {
- for (let index = 1; index <= numOfOptionals; index++) {
- cy.get(ss.mandatoryToggle).eq(index).click();
- cy.get(ss.selectOptional).eq(index).click();
- cy.get(ss.mandatoryToggle).eq(index).click();
- }
-});
-
-Then(/^I paste transaction ([^\s]+)$/, function (tx) {
- cy.get(ss.txSignInput).paste({ pastePayload: multiSignatureTxs[tx] });
-});
-
-Then(/^I confirm data of ([^\s]+)$/, function (tx) {
- let template = {};
- switch (tx) {
- case 'RegisterMultiSignGroupTx_second_sign':
- template.txSenderAddress = 'lsks6wh4zqfd8wyka3rj243rshcdqyug9gyvehxwz';
- template.txRequiredSignatures = '2';
- template.memberTitle = [
- 'lskdxc...cw7yt(Optional)',
- 'lskehj...o9cjy(Optional)',
- 'lsks6w...ehxwz(Mandatory)',
- 'lsks6w...ehxwz(Mandatory)',
- 'lskdxc...cw7yt(Optional)',
- 'lskehj...o9cjy(Optional)',
- ];
- template.txFee = '0.00414 LSK';
- template.txRemainingMembers = ' 2/3';
- break;
- case 'RegisterMultiSignGroupTx_third_sign':
- template.txSenderAddress = 'lsks6wh4zqfd8wyka3rj243rshcdqyug9gyvehxwz';
- template.txRequiredSignatures = '2';
- template.memberTitle = [
- 'lskdxc...cw7yt(Optional)',
- 'lskehj...o9cjy(Optional)',
- 'lsks6w...ehxwz(Mandatory)',
- 'lsks6w...ehxwz(Mandatory)',
- 'lskdxc...cw7yt(Optional)',
- 'lskehj...o9cjy(Optional)',
- ];
- template.txFee = '0.00414 LSK';
- template.txRemainingMembers = ' 1/3';
- break;
- case 'RegisterSecondPassphraseTx':
- template.txSenderAddress = 'lskwunwxqmss9w3mtuvzgbsfy665cz4eo3rd2mxdp';
- template.txRequiredSignatures = '2';
- template.memberTitle = [
- 'lskwun...2mxdp(Mandatory)',
- 'lskehj...o9cjy(Mandatory)',
- 'lskwun...2mxdp(Mandatory)',
- 'lskehj...o9cjy(Mandatory)',
- ];
- template.txFee = '0.00314 LSK';
- template.txRemainingMembers = ' 1/2';
- break;
- default:
- break;
- }
- cy.get(ss.txHeader).eq(0).should('have.text', 'Register multisignature group');
- cy.get(ss.txSenderAddress).eq(0).should('have.text', template.txSenderAddress);
- cy.get(ss.txRequiredSignatures).eq(0).should('have.text', template.txRequiredSignatures);
- cy.get(ss.txFee).eq(0).should('have.text', template.txFee);
- cy.get(ss.txRemainingMembers).eq(0).should('have.text', template.txRemainingMembers);
- template.memberTitle.forEach((el, index) => {
- cy.get(ss.memberTitle).eq(index).should('have.text', el);
- })
-});
-
-Then(/^I input second passphrase$/, function () {
- cy.get(ss.passphraseInput).first().click();
- cy.get(ss.passphraseInput).each(($el, index) => {
- const passphraseWordsArray = accounts.delegate.passphrase.split(' ');
- cy.wrap($el, { log: false }).type(passphraseWordsArray[index], { log: false });
- });
-});
-
-Then(/^I should have the transaction ([^\s]+) in the clipboard$/, function (tx) {
- cy.window().then((win) => {
- win.navigator.clipboard.readText().then((text) => {
- expect(text).to.eq(multiSignatureTxs[tx]);
- });
- });
-});
diff --git a/test/cypress/features/txTable_filtering.feature b/test/cypress/features/txTable_filtering.feature
index 6cb88fe0ef..187399e49f 100644
--- a/test/cypress/features/txTable_filtering.feature
+++ b/test/cypress/features/txTable_filtering.feature
@@ -9,7 +9,7 @@ Feature: Transaction table filtering
Scenario: Filter by 1 Amount, add second filter by 1 Amount
When I fill 10 in amountToInputFilter field
And I click on applyFilters
- Then I should see 3 transactions in table
+ Then I should see 2 transactions in table
When I click on filterTransactionsBtn
And I fill 10 in amountFromInputFilter field
And I clear input amountToInputFilter
@@ -22,6 +22,6 @@ Feature: Transaction table filtering
And I fill 50 in amountToInputFilter field
And I click on applyFilters
And I wait 2 seconds
- Then I should see 5 transactions in table
+ Then I should see 4 transactions in table
And I click on clearAllFiltersBtn
Then I should see 20 transactions in table
diff --git a/test/cypress/support/commands.js b/test/cypress/support/commands.js
index b0546f1d8b..896e9ea266 100644
--- a/test/cypress/support/commands.js
+++ b/test/cypress/support/commands.js
@@ -63,19 +63,3 @@ Cypress.Commands.add('autologin', (passphrase, network) => {
localStorage.setItem('liskServiceUrl', network);
localStorage.setItem('loginKey', passphrase);
});
-
-Cypress.Commands.add('paste', { prevSubject: true }, (subject, { pastePayload, pasteType = 'text' }) => {
- const data = pasteType === 'application/json' ? JSON.stringify(pastePayload) : pastePayload;
- const clipboardData = new DataTransfer();
- clipboardData.setData(pasteType, data);
- const pasteEvent = new ClipboardEvent('paste', {
- bubbles: true,
- cancelable: true,
- dataType: pasteType,
- data,
- clipboardData,
- });
- subject[0].dispatchEvent(pasteEvent);
-
- return subject;
-});
diff --git a/test/cypress/utils/mockTx.js b/test/cypress/utils/mockTx.js
deleted file mode 100644
index dd23e8d092..0000000000
--- a/test/cypress/utils/mockTx.js
+++ /dev/null
@@ -1,9 +0,0 @@
-const multiSignatureTxs = {
- RegisterSecondPassphraseTx: '{"moduleID":4,"assetID":0,"senderPublicKey":"6b40b2c68d52b1532d0374a078974798cff0b59d0a409a8d574378fe2c69daef","nonce":"0n","fee":"314000n","signatures":["ce4d40ed844017a3daee95158cf5992a17c2044e1d5cd208c4938cb296344c5fa3277b1c68d4826b5be1b312d0c65b54af89f4e0abacb1ed71b4d0b7f3123900","ce4d40ed844017a3daee95158cf5992a17c2044e1d5cd208c4938cb296344c5fa3277b1c68d4826b5be1b312d0c65b54af89f4e0abacb1ed71b4d0b7f3123900",""],"asset":{"numberOfSignatures":2,"mandatoryKeys":["6b40b2c68d52b1532d0374a078974798cff0b59d0a409a8d574378fe2c69daef","86499879448d1b0215d59cbf078836e3d7d9d2782d56a2274a568761bff36f19"],"optionalKeys":[]},"id":"d8b0425377062c6e1ac35383458de959b9cb9a931457dbe1fae161091d40a410"}',
- RegisterMultiSignGroupTx_second_sign: '{"moduleID":4,"assetID":0,"senderPublicKey":"a04a60f5f3f9be3a15b121342ba81b7bd66d37e7f3e8cc4f7c03396bd9c1f103","nonce":"0n","fee":"414000n","signatures":["89c380e42226cbcdf8738390cdcd215521348e50f27e21767baa7f88d91d86fd87949d01b11f82afe865b025222f33d3c1c72a0b4f0122d9cc77513bbcc03b0d","89c380e42226cbcdf8738390cdcd215521348e50f27e21767baa7f88d91d86fd87949d01b11f82afe865b025222f33d3c1c72a0b4f0122d9cc77513bbcc03b0d","",""],"asset":{"numberOfSignatures":2,"mandatoryKeys":["a04a60f5f3f9be3a15b121342ba81b7bd66d37e7f3e8cc4f7c03396bd9c1f103"],"optionalKeys":["0fe9a3f1a21b5530f27f87a414b549e79a940bf24fdf2b2f05e7f22aeeecc86a","86499879448d1b0215d59cbf078836e3d7d9d2782d56a2274a568761bff36f19"]},"id":"9ae1254b9333e4a103dc2c49c596d7d55013d46e18043a95c1b9d1319d84c83c"}',
- RegisterMultiSignGroupTx_third_sign: '{"moduleID":4,"assetID":0,"senderPublicKey":"a04a60f5f3f9be3a15b121342ba81b7bd66d37e7f3e8cc4f7c03396bd9c1f103","nonce":"0n","fee":"414000n","signatures":["89c380e42226cbcdf8738390cdcd215521348e50f27e21767baa7f88d91d86fd87949d01b11f82afe865b025222f33d3c1c72a0b4f0122d9cc77513bbcc03b0d","89c380e42226cbcdf8738390cdcd215521348e50f27e21767baa7f88d91d86fd87949d01b11f82afe865b025222f33d3c1c72a0b4f0122d9cc77513bbcc03b0d","336541438f0f81019c05af132600defea2f235525022e24a1b4184e71674233f7df7463ed739a4624dcd351b1e344707ea2a3953c003b7ecb1e5a632b58cae00",""],"asset":{"numberOfSignatures":2,"mandatoryKeys":["a04a60f5f3f9be3a15b121342ba81b7bd66d37e7f3e8cc4f7c03396bd9c1f103"],"optionalKeys":["0fe9a3f1a21b5530f27f87a414b549e79a940bf24fdf2b2f05e7f22aeeecc86a","86499879448d1b0215d59cbf078836e3d7d9d2782d56a2274a568761bff36f19"]},"id":"f0ea4fb53ba647715fc5a11a36bbbe6edb8026e7b476b5b287e3a4452bef3289"}',
-};
-
-export default {
- multiSignatureTxs,
-};