ee747aa12d
* test: home page tests done * test: asset and block tests added * test: txs, market and network tests added * chore: remove old test files * test: remove Cypress command functions * fix: failing block explorer tests in CI * test: add wait for blocks * test: re-add cypress functions * chore: resolved PR comment
88 lines
2.9 KiB
JavaScript
88 lines
2.9 KiB
JavaScript
//Tests set to skip until transactions are generated after capsule start up
|
|
context.skip('Transactions page', function () {
|
|
before('visit token home page', function () {
|
|
cy.visit('/');
|
|
});
|
|
|
|
describe('Verify elements on page', function () {
|
|
const transactionNavigation = 'a[href="/txs"]';
|
|
const transactionRow = 'transaction-row';
|
|
const txHash = 'hash';
|
|
|
|
beforeEach('Navigate to transactions page', function () {
|
|
cy.get(transactionNavigation).click();
|
|
});
|
|
|
|
it('transactions are displayed', function () {
|
|
cy.get(transactionRow).should('have.length.above', 1);
|
|
});
|
|
|
|
it('transactions details page is displayed', function () {
|
|
clickTopTransaction();
|
|
validateTxDetailsAreDisplayed();
|
|
});
|
|
|
|
it('transactions details page is displayed in mobile', function () {
|
|
cy.common_switch_to_mobile_and_click_toggle();
|
|
cy.get(transactionNavigation).click();
|
|
clickTopTransaction();
|
|
validateTxDetailsAreDisplayed();
|
|
});
|
|
|
|
function clickTopTransaction() {
|
|
// eslint-disable-next-line cypress/no-unnecessary-waiting
|
|
cy.wait(1000); // Wait for transactions to load if there are any
|
|
cy.get('body').then(($body) => {
|
|
if ($body.find(transactionRow).length) {
|
|
cy.get(transactionRow)
|
|
.first()
|
|
.find('a')
|
|
.first()
|
|
.click({ force: true });
|
|
} else {
|
|
cy.slack('Unable to find any transactions on page');
|
|
cy.screenshot();
|
|
}
|
|
});
|
|
}
|
|
|
|
function validateTxDetailsAreDisplayed() {
|
|
// eslint-disable-next-line cypress/no-unnecessary-waiting
|
|
cy.wait(1000); // Wait for transactions to load if there are any
|
|
cy.get('body').then(($body) => {
|
|
if ($body.find(txHash).length) {
|
|
cy.get(txHash).invoke('text').should('have.length', 64);
|
|
cy.get('submitted-by')
|
|
.find('a')
|
|
.then(($address) => {
|
|
cy.wrap($address).should('have.attr', 'href');
|
|
cy.wrap($address).invoke('text').should('have.length', 66);
|
|
});
|
|
cy.get('block').should('not.be.empty');
|
|
cy.get('encoded-tnx').should('not.be.empty');
|
|
cy.get('tx-type')
|
|
.should('not.be.empty')
|
|
.invoke('text')
|
|
.then((txTypeTxt) => {
|
|
if (txTypeTxt == 'Order Submission') {
|
|
cy.get('.hljs-attr')
|
|
.should('have.length.at.least', 8)
|
|
.each(($propertyName) => {
|
|
cy.wrap($propertyName).should('not.be.empty');
|
|
});
|
|
cy.get('.hljs-string')
|
|
.should('have.length.at.least', 8)
|
|
.each(($propertyValue) => {
|
|
cy.wrap($propertyValue).should('not.be.empty');
|
|
});
|
|
}
|
|
});
|
|
} else {
|
|
cy.slack('Unable to find any transactions on page');
|
|
cy.screenshot();
|
|
}
|
|
});
|
|
}
|
|
});
|
|
});
|