import { SelectLoanPo } from './pages/select-loan.po'; import { SelectLoanCreditPo } from './pages/select-loan-credit.po'; import { browser } from 'protractor'; import { SelectLoanVehiclePo } from './pages/select-loan-vehicle.po'; import { SelectLoanHomePo } from './pages/select-loan-home.po'; import { SelectLoanPersonalPo } from './pages/select-loan-personal.po'; import { SelectLoanVehicleSubPo } from './pages/select-loan-vehicle-sub.po'; describe('Select Loan', () => { const landingPage = new SelectLoanPo(); it('should display landing page with correct text and cards', () => { landingPage.navigateTo(); expect(landingPage.getHeaderBar()).toBeDefined(); const text = landingPage.getTextByClassName('loan-header'); expect(text).toEqual('Start a new loan application'); expect(landingPage.isElementEnabled(landingPage.CREDIT_CARD_CARD)).toEqual(true); expect(landingPage.isElementEnabled(landingPage.HOME_EQUITY_CARD)).toEqual(true); expect(landingPage.isElementEnabled(landingPage.PERSONAL_CARD)).toEqual(true); expect(landingPage.isElementEnabled(landingPage.VEHICLE_CARD)).toEqual(true); landingPage.clickCard(landingPage.CREDIT_CARD_CARD); }); it('should display credit card landing page with correct text and cards', () => { const page = new SelectLoanCreditPo(); expect(page.getHeaderBar()).toBeDefined(); const text = page.getTextByClassName('loan-header'); expect(text).toEqual('Select a credit card type'); expect(page.isElementEnabled(page.CASH_BACK)).toEqual(true); expect(page.isElementEnabled(page.REWARDS)).toEqual(true); expect(page.isElementEnabled(page.SECURED)).toEqual(true); expect(page.isElementEnabled(page.STUDENT)).toEqual(true); page.clickCard(page.CASH_BACK); browser.navigate().back(); page.clickCard(page.REWARDS); browser.navigate().back(); page.clickCard(page.SECURED); browser.navigate().back(); page.clickCard(page.STUDENT); browser.navigate().back(); page.goPrevious(); landingPage.clickCard(landingPage.VEHICLE_CARD); }); it('should display vehicle landing page with correct text and cards', () => { const page = new SelectLoanVehiclePo(); expect(page.getHeaderBar()).toBeDefined(); const text = page.getTextByClassName('loan-header'); expect(text).toEqual('Select a vehicle type'); expect(page.isElementEnabled(page.BOAT)).toEqual(true); expect(page.isElementEnabled(page.POWERSPORTS)).toEqual(true); expect(page.isElementEnabled(page.TRAILER)).toEqual(true); expect(page.isElementEnabled(page.AUTO)).toEqual(true); page.clickCard(page.BOAT); browser.navigate().back(); page.clickCard(page.POWERSPORTS); browser.navigate().back(); page.clickCard(page.TRAILER); browser.navigate().back(); page.clickCard(page.AUTO); }); it('should display vehicle sub landing page with correct text and cards', () => { const page = new SelectLoanVehicleSubPo(); expect(page.getHeaderBar()).toBeDefined(); const text = page.getTextByClassName('loan-header'); expect(text).toEqual('Select a vehicle type'); expect(page.isElementEnabled(page.LOAN)).toEqual(true); expect(page.isElementEnabled(page.PRE)).toEqual(true); page.clickCard(page.LOAN); browser.navigate().back(); page.clickCard(page.PRE); browser.navigate().back(); page.goPrevious(); page.goPrevious(); landingPage.clickCard(landingPage.HOME_EQUITY_CARD); }); it('should display home equity landing page with correct text and cards', () => { const page = new SelectLoanHomePo(); expect(page.getHeaderBar()).toBeDefined(); const text = page.getTextByClassName('loan-header'); expect(text).toEqual('Select a home equity type'); expect(page.isElementEnabled(page.HOME_EQUITY)).toEqual(true); expect(page.isElementEnabled(page.MANU_HOME)).toEqual(true); expect(page.isElementEnabled(page.MORT_REFI)).toEqual(true); expect(page.isElementEnabled(page.HELOC)).toEqual(true); page.clickCard(page.HOME_EQUITY); browser.navigate().back(); page.clickCard(page.MANU_HOME); browser.navigate().back(); page.clickCard(page.MORT_REFI); browser.navigate().back(); page.clickCard(page.HELOC); browser.navigate().back(); page.goPrevious(); landingPage.clickCard(landingPage.PERSONAL_CARD); }); it('should start personal loan ', () => { const page = new SelectLoanPersonalPo(); expect(page.getHeaderBar()).toBeDefined(); browser.navigate().back(); expect(landingPage.getHeaderBar()).toBeDefined(); }); });