The code changes incorporate UI updates for better usability and user experience. E2E test scripts(in `user-billing.spec.ts` and `team-billing.spec.ts`) were also updated for improved efficiency and accuracy, primarily replacing 'Active' status check with 'Trial'. Changes have been made in the trialDays configuration, with the term 'trialPeriod' now replaced by 'trialDays' across different components. Notably, a new error handling case is included in `lemon-squeezy-billing-strategy.service.ts` for failed subscription cancellation attempts.
31 lines
899 B
TypeScript
31 lines
899 B
TypeScript
import { expect, Page, test } from '@playwright/test';
|
|
import { TeamBillingPageObject } from './team-billing.po';
|
|
|
|
test.describe('Team Billing', () => {
|
|
let page: Page;
|
|
let po: TeamBillingPageObject;
|
|
|
|
test.beforeAll(async ({ browser }) => {
|
|
page = await browser.newPage();
|
|
po = new TeamBillingPageObject(page);
|
|
|
|
await po.setup();
|
|
await po.teamAccounts.goToBilling();
|
|
});
|
|
|
|
test('a team can subscribe to a plan', async () => {
|
|
await po.billing.selectPlan(0);
|
|
await po.billing.proceedToCheckout();
|
|
|
|
await po.billing.stripe.fillForm();
|
|
await po.billing.stripe.submitForm();
|
|
|
|
await expect(po.billing.successStatus()).toBeVisible();
|
|
await po.billing.returnToHome();
|
|
|
|
await po.teamAccounts.goToBilling();
|
|
|
|
await expect(await po.billing.getStatus()).toContainText('Trial');
|
|
await expect(po.billing.manageBillingButton()).toBeVisible();
|
|
});
|
|
}); |