diff --git a/.github/workflows/playwright.yml b/.github/workflows/playwright.yml
index a214e3f5..8b9dd2ad 100644
--- a/.github/workflows/playwright.yml
+++ b/.github/workflows/playwright.yml
@@ -32,6 +32,8 @@ jobs:
- name: Build dashboard
run: yarn build:dashboard
+ env:
+ VITE_SERVER_BASE_URL: http://localhost:8000
- name: Start Backend Server
run: docker compose -f ./docker-compose-test.yml up -d
diff --git a/apps/frontend/.gitignore b/apps/frontend/.gitignore
index b88c8135..2f878a4e 100644
--- a/apps/frontend/.gitignore
+++ b/apps/frontend/.gitignore
@@ -26,3 +26,4 @@ dist-ssr
/playwright-report/
/blob-report/
/playwright/.cache/
+/playwright/.auth/
diff --git a/apps/frontend/package.json b/apps/frontend/package.json
index 93317f01..5e312657 100644
--- a/apps/frontend/package.json
+++ b/apps/frontend/package.json
@@ -60,6 +60,7 @@
"zustand": "^4.4.5"
},
"devDependencies": {
+ "@faker-js/faker": "^9.0.1",
"@graphql-codegen/cli": "^3.3.1",
"@graphql-codegen/client-preset": "^4.1.0",
"@graphql-codegen/typescript": "^3.0.4",
diff --git a/apps/frontend/playwright.config.ts b/apps/frontend/playwright.config.ts
index 55c996b3..69298e40 100644
--- a/apps/frontend/playwright.config.ts
+++ b/apps/frontend/playwright.config.ts
@@ -1,4 +1,5 @@
import { defineConfig, devices } from "@playwright/test";
+import { ONBOARDED_USER_FILE } from "./tests/utils/constants";
/**
* Read environment variables from file.
@@ -12,14 +13,15 @@ import { defineConfig, devices } from "@playwright/test";
*/
export default defineConfig({
testDir: "./tests",
+ timeout: 90000,
/* Run tests in files in parallel */
fullyParallel: true,
/* Fail the build on CI if you accidentally left test.only in the source code. */
forbidOnly: !!process.env.CI,
- /* Retry on CI only */
- retries: process.env.CI ? 2 : 0,
+
+ retries: 3,
/* Opt out of parallel tests on CI. */
- workers: process.env.CI ? 1 : undefined,
+ workers: process.env.CI ? undefined : "80%",
/* Reporter to use. See https://playwright.dev/docs/test-reporters */
reporter: "html",
/* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */
@@ -33,19 +35,24 @@ export default defineConfig({
/* Configure projects for major browsers */
projects: [
+ { name: "setup", testMatch: /.*\.setup\.ts/ },
+
{
name: "chromium",
- use: { ...devices["Desktop Chrome"] },
+ use: { ...devices["Desktop Chrome"], storageState: ONBOARDED_USER_FILE },
+ dependencies: ["setup"],
},
{
name: "firefox",
- use: { ...devices["Desktop Firefox"] },
+ use: { ...devices["Desktop Firefox"], storageState: ONBOARDED_USER_FILE },
+ dependencies: ["setup"],
},
{
name: "webkit",
- use: { ...devices["Desktop Safari"] },
+ use: { ...devices["Desktop Safari"], storageState: ONBOARDED_USER_FILE },
+ dependencies: ["setup"],
},
/* Test against mobile viewports. */
diff --git a/apps/frontend/src/layout/partials/Navbar.tsx b/apps/frontend/src/layout/partials/Navbar.tsx
index 20ee6bea..e68e8b29 100644
--- a/apps/frontend/src/layout/partials/Navbar.tsx
+++ b/apps/frontend/src/layout/partials/Navbar.tsx
@@ -165,6 +165,7 @@ export const Navbar = () => {