This commit is contained in:
Zeeshaun
2026-03-25 11:54:22 -05:00
parent 4d52ebc209
commit 883009770f
776 changed files with 86726 additions and 0 deletions
@@ -0,0 +1,10 @@
import { SelectLoanPo } from './select-loan.po';
export class SelectLoanCreditPo extends SelectLoanPo {
public readonly PAGE_URL = '/select-loan/credit-card';
public readonly CASH_BACK = 'cc-cash';
public readonly REWARDS = 'cc-reward';
public readonly STUDENT = 'cc-student';
public readonly SECURED = 'cc-secured';
}
@@ -0,0 +1,11 @@
import { SelectLoanPo } from './select-loan.po';
export class SelectLoanHomePo extends SelectLoanPo {
public readonly PAGE_URL = '/select-loan/home-equity';
public readonly HELOC = 'eq-heloc';
public readonly HOME_EQUITY = 'eq-fixed';
public readonly MORT_REFI = 'eq-refi';
public readonly MANU_HOME = 'eq-manu';
}
@@ -0,0 +1,7 @@
import { SelectLoanPo } from './select-loan.po';
export class SelectLoanPersonalPo extends SelectLoanPo {
public readonly PAGE_URL = '/loan-wizard/sl/pe';
}
@@ -0,0 +1,9 @@
import { SelectLoanPo } from './select-loan.po';
export class SelectLoanVehicleSubPo extends SelectLoanPo {
public PAGE_URL = '/select-loan/sub-vehicle';
public readonly LOAN = 've-loan';
public readonly PRE = 've-pre';
}
@@ -0,0 +1,11 @@
import { SelectLoanPo } from './select-loan.po';
export class SelectLoanVehiclePo extends SelectLoanPo {
public readonly PAGE_URL = '/select-loan/vehicle';
public readonly AUTO = 've-sub';
public readonly BOAT = 've-boat';
public readonly POWERSPORTS = 've-power';
public readonly TRAILER = 've-trailer';
}
@@ -0,0 +1,42 @@
import {browser, by, element } from 'protractor';
export class SelectLoanPo {
public PAGE_URL = '/';
public readonly CREDIT_CARD_CARD = 'cc-card';
public readonly HOME_EQUITY_CARD = 'he-card';
public readonly VEHICLE_CARD = 've-card';
public readonly PERSONAL_CARD = 'pe-card';
public readonly PREVIOUS_BUTTON = 'previous';
navigateTo() {
return browser.get(this.PAGE_URL);
}
getHeaderBar() {
return element(by.css('lw-navigation'));
}
getPageTitle() {
return browser.getTitle();
}
getTextByClassName(className: string) {
return element(by.className(className)).getText();
}
isElementEnabled(eId: string) {
return element(by.id(eId)).isEnabled();
}
clickCard(eId: string): void {
const card = element(by.id(eId));
card.click();
}
goPrevious(): void {
const nextButton = element(by.id(this.PREVIOUS_BUTTON));
nextButton.click();
}
}
@@ -0,0 +1,107 @@
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();
});
});