import PARTY from '../../../enum/party'; import USER_ROLE from '../../../enum/userRole'; import { AmendmentOverview } from '../../../pages/amendment/amendmentOverview.page'; import SubSideMenu from '../../../pages/sideMenu/subSideMenu.page'; import { loginToMainPageForScenario } from '../../login/glue/loginToMainPageForScenario'; import { navigateToCurrentDC } from '../../navigation/glue/navigateToCurrentDC'; export async function checkAmendmentOverviewRowDetailsOrActions(type: string, scenario: string, dataTable: any) { const amendmentOverviewPage = new AmendmentOverview(); const subSideMenuPage = new SubSideMenu(); const data = dataTable.rowsHash(); const partiesToVerify = [ PARTY.BENEFICIARY, PARTY.APPLICANT, PARTY.ISSUING_BANK, PARTY.ADVISING_BANK, PARTY.CONFIRMING_BANK, PARTY.NOMINATED_BANK ]; const parties = data['Parties'].split('.'); let typeString = ''; if (type == 'details') { typeString = 'Detail'; } else { typeString = 'Beneficiary Action'; } for (const element of parties) { loginToMainPageForScenario(element, USER_ROLE.ADMIN1, scenario); navigateToCurrentDC(element, 'contour uuid'); await subSideMenuPage.getSubMenuOption('Amendments').clickElement(); if (type == 'details') { for (let j = 0; j < Object.keys(data).length - 1; j++) { await amendmentOverviewPage.getListRow(String(j + 1)).clickElement(); } } for (let j = 0; j < Object.keys(data).length - 1; j++) { const hideElements = []; if (type == 'details') { hideElements.push(amendmentOverviewPage.getListRowOtherPartiesAction(String(j + 1))); hideElements.push(amendmentOverviewPage.getListRowViewButton(String(j + 1))); await amendmentOverviewPage.getListRowDetail(String(j + 1)).scroll(); await browser.pause(2000); await amendmentOverviewPage .getListRowDetail(String(j + 1)) .compareElementImage(data[`Row ${j + 1} ${typeString}`], { removeElements: hideElements }); } else { const baselineReference = data[`Row ${j + 1} ${typeString}`]; const partyReference = baselineReference + partiesToVerify[0]; hideElements.push(amendmentOverviewPage.getListRowYourAction(String(j + 1))); await amendmentOverviewPage .getListRow(String(j + 1)) .compareElementImage(partyReference, { hideElements: hideElements }); partiesToVerify.shift(); } } } }