initial commit

This commit is contained in:
Harivansh Rathi 2024-11-25 19:28:40 -05:00
commit 9963e01acc
158 changed files with 48198 additions and 0 deletions

26
tests/e2e/I18n.e2e.ts Normal file
View file

@ -0,0 +1,26 @@
import { expect, test } from '@playwright/test';
test.describe('I18n', () => {
test.describe('Language Switching', () => {
test('should switch language from English to French using dropdown and verify text on the homepage', async ({ page }) => {
await page.goto('/');
await expect(page.getByText('The perfect SaaS template to build')).toBeVisible();
await page.getByRole('button', { name: 'lang-switcher' }).click();
await page.getByText('Français').click();
await expect(page.getByText('Le parfait SaaS template pour construire')).toBeVisible();
});
test('should switch language from English to French using URL and verify text on the sign-in page', async ({ page }) => {
await page.goto('/sign-in');
await expect(page.getByText('Email address')).toBeVisible();
await page.goto('/fr/sign-in');
await expect(page.getByText('Adresse e-mail')).toBeVisible();
});
});
});

View file

@ -0,0 +1,23 @@
import { expect, test } from '@playwright/test';
// Checkly is a tool used to monitor deployed environments, such as production or preview environments.
// It runs end-to-end tests with the `.check.e2e.ts` extension after each deployment to ensure that the environment is up and running.
// With Checkly, you can monitor your production environment and run `*.check.e2e.ts` tests regularly at a frequency of your choice.
// If the tests fail, Checkly will notify you via email, Slack, or other channels of your choice.
// On the other hand, E2E tests ending with `*.e2e.ts` are only run before deployment.
// You can run them locally or on CI to ensure that the application is ready for deployment.
// BaseURL needs to be explicitly defined in the test file.
// Otherwise, Checkly runtime will throw an exception: `CHECKLY_INVALID_URL: Only URL's that start with http(s)`
// You can't use `goto` function directly with a relative path like with other *.e2e.ts tests.
// Check the example at https://feedback.checklyhq.com/changelog/new-changelog-436
test.describe('Sanity', () => {
test.describe('Static pages', () => {
test('should display the homepage', async ({ page, baseURL }) => {
await page.goto(`${baseURL}/`);
await expect(page.getByText('The perfect SaaS template to build')).toBeVisible();
});
});
});

22
tests/e2e/Visual.e2e.ts Normal file
View file

@ -0,0 +1,22 @@
import percySnapshot from '@percy/playwright';
import { expect, test } from '@playwright/test';
test.describe('Visual testing', () => {
test.describe('Static pages', () => {
test('should take screenshot of the homepage', async ({ page }) => {
await page.goto('/');
await expect(page.getByText('The perfect SaaS template to build')).toBeVisible();
await percySnapshot(page, 'Homepage');
});
test('should take screenshot of the French homepage', async ({ page }) => {
await page.goto('/fr');
await expect(page.getByText('Le parfait SaaS template pour construire')).toBeVisible();
await percySnapshot(page, 'Homepage - French');
});
});
});