qe-fe-automation
Version:
FE test automation framework using cypress
213 lines (198 loc) • 7.83 kB
text/typescript
import { GrowthInterceptApis } from '@growth-lib/api-intercept';
import { LoginSelfSell, SignupReason, UserRole } from '@support-growth/login-self-sell';
import { SignUp } from '@growth-lib/sign-up';
import { AmplitudeEvents } from '@growth-lib/amplitude-events';
import { DelegatePage } from '@growth-lib/delegate-page';
import { HomePage } from '@rebranded_home_page-lib/home-page';
import { Timeouts } from '@utility-lib/constants';
import { AdminClaim } from '@growth-lib/admin-claim';
import { FreePricing } from '@growth-lib/free-pricing';
import { GrowthUtilities } from '@growth-lib/growth-utilities';
describe('Growth: new sign-up flow with signupReason and role', () => {
beforeEach(() => {
GrowthInterceptApis.interceptApis();
});
let token: string;
let companyDomainWithFewUser: string;
it('C11004495: Onboard self sell user with signupReason: BOOK_FOR_OTHERS', { tags: ['@tier1'] }, () => {
LoginSelfSell.createNewSelfSellLead({
signupReason: SignupReason.BOOK_FOR_OTHERS
}).then((login) => {
token = login.token;
companyDomainWithFewUser = login.companyDomain;
SignUp.fillSignUpForm(token);
DelegatePage.verifyDelegateHomePageOpened();
AmplitudeEvents.expectAmplitudeEventsToBeSent();
});
});
it(
'C11004899: Onboard self sell user with signupReason: BOOK_FOR_OTHERS twice in the same company',
{ tags: ['@tier1'] },
() => {
LoginSelfSell.createNewSelfSellLead({
tag: GrowthUtilities.generateRandomTag(),
companyDomain: companyDomainWithFewUser,
signupReason: SignupReason.BOOK_FOR_OTHERS
}).then((login) => {
const local_token = login.token;
SignUp.fillSignUpForm(local_token);
FreePricing.openPricing();
FreePricing.openAdminClaim();
AdminClaim.fillAdminClaim();
cy.wait(Timeouts.MEDIUM_TIMEOUT_10_SEC.timeout);
HomePage.verifyHomePage();
AmplitudeEvents.expectAmplitudeEventsToBeSent();
});
}
);
it(
'C11004900: Onboard self sell user with signupReason: TRAVEL_SOLUTION and userRole: EXECUTIVE_ASSISTANCE',
{ tags: ['@tier1'] },
() => {
LoginSelfSell.createNewSelfSellLead({
signupReason: SignupReason.TRAVEL_SOLUTION,
userRole: UserRole.EXECUTIVE_ASSISTANCE
}).then((login) => {
const local_token = login.token;
companyDomainWithFewUser = login.companyDomain;
SignUp.fillSignUpForm(local_token);
FreePricing.verifyTravelPricingScreenIsOpened(true);
FreePricing.openAdminClaim();
AdminClaim.fillAdminClaim();
cy.wait(Timeouts.MEDIUM_TIMEOUT_10_SEC.timeout);
DelegatePage.verifyDelegateHomePageOpened();
AmplitudeEvents.expectAmplitudeEventsToBeSent();
});
}
);
it(
'C11233314: Onboard self sell user with signupReason: TRAVEL_SOLUTION and userRole: EXECUTIVE_ASSISTANCE, a second user will be rogue',
{ tags: ['@tier1'] },
() => {
LoginSelfSell.createNewSelfSellLead({
tag: GrowthUtilities.generateRandomTag(),
companyDomain: companyDomainWithFewUser,
signupReason: SignupReason.TRAVEL_SOLUTION,
userRole: UserRole.EXECUTIVE_ASSISTANCE
}).then((login) => {
const local_token = login.token;
companyDomainWithFewUser = login.companyDomain;
SignUp.fillSignUpForm(local_token);
cy.wait(Timeouts.SHORT_TIMEOUT_5_SEC.timeout);
HomePage.verifyHomePage();
});
}
);
it(
'C11068081: Onboard self sell user with signupReason: BOOK_TRIP and userRole: TRAVELER',
{ tags: ['@tier1'] },
() => {
LoginSelfSell.createNewSelfSellLead({
signupReason: SignupReason.BOOK_TRIP,
userRole: UserRole.TRAVELER
}).then((login) => {
const local_token = login.token;
companyDomainWithFewUser = login.companyDomain;
SignUp.fillSignUpForm(local_token);
cy.wait(Timeouts.MEDIUM_TIMEOUT_10_SEC.timeout);
HomePage.verifyHomePage();
AmplitudeEvents.expectAmplitudeEventsToBeSent();
});
}
);
it(
'C11233315: Onboard self sell user with signupReason: BOOK_TRIP and userRole: TRAVELER, mobile-web - a second rogue user',
{ tags: ['@tier1'] },
() => {
LoginSelfSell.createNewSelfSellLead({
tag: GrowthUtilities.generateRandomTag(),
companyDomain: companyDomainWithFewUser,
signupReason: SignupReason.BOOK_TRIP,
userRole: UserRole.TRAVELER
}).then((login) => {
const local_token = login.token;
SignUp.fillSignUpFormMobileWeb(local_token);
SignUp.continueOnDesktop();
AmplitudeEvents.expectAmplitudeEventsToBeSent();
});
}
);
it(
'C11068082: Onboard self sell user with signupReason: TRAVEL_AND_EXPENSE_SOLUTION and userRole: OPERATIONS',
{ tags: ['@tier1'] },
() => {
LoginSelfSell.createNewSelfSellLead({
signupReason: SignupReason.TRAVEL_AND_EXPENSE_SOLUTION,
userRole: UserRole.OPERATIONS
}).then((login) => {
const local_token = login.token;
companyDomainWithFewUser = login.companyDomain;
SignUp.fillSignUpForm(local_token);
FreePricing.verifyExpensePricingScreenIsOpened();
});
}
);
it(
'C11233316: Onboard self sell user with signupReason: TRAVEL_AND_EXPENSE_SOLUTION and userRole: OPERATIONS, a second user',
{ tags: ['@tier1'] },
() => {
LoginSelfSell.createNewSelfSellLead({
tag: GrowthUtilities.generateRandomTag(),
companyDomain: companyDomainWithFewUser,
signupReason: SignupReason.TRAVEL_AND_EXPENSE_SOLUTION,
userRole: UserRole.OPERATIONS
}).then((login) => {
const local_token = login.token;
SignUp.fillSignUpForm(local_token);
FreePricing.verifyExpensePricingScreenIsOpened();
});
}
);
it('C11068083: Onboard self sell user with signupReason: TRAVEL_SOLUTION', { tags: ['@tier1'] }, () => {
LoginSelfSell.createNewSelfSellLead({
signupReason: SignupReason.TRAVEL_SOLUTION
}).then((login) => {
const local_token = login.token;
companyDomainWithFewUser = login.companyDomain;
SignUp.fillSignUpForm(local_token);
FreePricing.verifyTravelPricingScreenIsOpened();
AmplitudeEvents.expectAmplitudeEventsToBeSent();
});
});
it(
'C11233317: Onboard self sell user with signupReason: TRAVEL_SOLUTION, a second user',
{ tags: ['@tier1'] },
() => {
LoginSelfSell.createNewSelfSellLead({
tag: GrowthUtilities.generateRandomTag(),
companyDomain: companyDomainWithFewUser,
signupReason: SignupReason.TRAVEL_SOLUTION
}).then((login) => {
const local_token = login.token;
SignUp.fillSignUpForm(local_token);
FreePricing.verifyTravelPricingScreenIsOpened();
AmplitudeEvents.expectAmplitudeEventsToBeSent();
});
}
);
it('C11068084: Onboard self sell user with signupReason: TEAM_OFFSITE', { tags: ['@tier1'] }, () => {
LoginSelfSell.createNewSelfSellLead({
signupReason: SignupReason.TEAM_OFFSITE
}).then((login) => {
const local_token = login.token;
SignUp.fillSignUpForm(local_token);
FreePricing.verifyTravelPricingScreenIsOpened();
AmplitudeEvents.expectAmplitudeEventsToBeSent();
});
});
it('C11233318: Onboard self sell user with signupReason: TEAM_OFFSITE, a second user', { tags: ['@tier1'] }, () => {
LoginSelfSell.createNewSelfSellLead({
signupReason: SignupReason.TEAM_OFFSITE
}).then((login) => {
const local_token = login.token;
SignUp.fillSignUpForm(local_token);
FreePricing.verifyTravelPricingScreenIsOpened();
AmplitudeEvents.expectAmplitudeEventsToBeSent();
});
});
});