2026-03-09 19:16:43 -07:00
|
|
|
import { defineConfig, devices } from "@playwright/test";
|
|
|
|
|
|
|
|
|
|
export default defineConfig({
|
|
|
|
|
testDir: "./tests/e2e",
|
|
|
|
|
timeout: 30_000,
|
|
|
|
|
retries: process.env.CI ? 2 : 0,
|
|
|
|
|
workers: 1,
|
|
|
|
|
reporter: [
|
|
|
|
|
["list"],
|
|
|
|
|
["html", { open: "never", outputFolder: "playwright-report" }],
|
|
|
|
|
],
|
|
|
|
|
use: {
|
|
|
|
|
baseURL: "http://127.0.0.1:4173",
|
|
|
|
|
screenshot: "only-on-failure",
|
|
|
|
|
trace: "on-first-retry",
|
|
|
|
|
video: "retain-on-failure",
|
|
|
|
|
},
|
|
|
|
|
projects: [
|
|
|
|
|
{
|
|
|
|
|
name: "smoke",
|
2026-03-10 17:44:39 -04:00
|
|
|
testMatch: [
|
|
|
|
|
"**/smoke.spec.ts",
|
2026-06-16 23:37:09 -07:00
|
|
|
"**/navigation.spec.ts",
|
2026-03-10 17:44:39 -04:00
|
|
|
"**/channels.spec.ts",
|
2026-06-29 09:42:31 -04:00
|
|
|
"**/channel-shared-header-backdrop.spec.ts",
|
2026-06-03 21:16:49 -04:00
|
|
|
"**/badge.spec.ts",
|
2026-03-12 12:53:59 -07:00
|
|
|
"**/channel-browser.spec.ts",
|
2026-03-10 17:44:39 -04:00
|
|
|
"**/messaging.spec.ts",
|
2026-06-02 14:19:07 -07:00
|
|
|
"**/custom-emoji.spec.ts",
|
2026-06-05 09:26:13 -07:00
|
|
|
"**/profile-custom-emoji-status.spec.ts",
|
2026-06-25 09:25:34 -07:00
|
|
|
"**/custom-emoji-ui.spec.ts",
|
|
|
|
|
"**/channel-mute.spec.ts",
|
|
|
|
|
"**/channel-star.spec.ts",
|
|
|
|
|
"**/channel-controls.spec.ts",
|
|
|
|
|
"**/active-turn-resilience.spec.ts",
|
|
|
|
|
"**/profile-active-turn.spec.ts",
|
2026-06-29 16:51:32 -04:00
|
|
|
"**/config-bridge-screenshots.spec.ts",
|
2026-07-01 16:33:26 -04:00
|
|
|
"**/observer-feed-screenshots.spec.ts",
|
2026-07-06 20:59:23 -07:00
|
|
|
"**/activity-scope-label-screenshots.spec.ts",
|
2026-07-06 17:41:56 -04:00
|
|
|
"**/local-archive-screenshots.spec.ts",
|
2026-07-06 18:23:38 -04:00
|
|
|
"**/agent-readiness-screenshots.spec.ts",
|
2026-06-01 12:57:04 -07:00
|
|
|
"**/file-attachment.spec.ts",
|
2026-06-29 14:30:15 +01:00
|
|
|
"**/image-attachment-gallery.spec.ts",
|
2026-07-06 16:36:01 -07:00
|
|
|
"**/composer-image-draw.spec.ts",
|
2026-06-11 23:21:54 +01:00
|
|
|
"**/video-attachment.spec.ts",
|
2026-06-16 08:01:57 +01:00
|
|
|
"**/spoiler.spec.ts",
|
2026-07-06 16:36:01 -07:00
|
|
|
"**/composer-tooltip-dismiss.spec.ts",
|
2026-03-12 16:41:20 -07:00
|
|
|
"**/mentions.spec.ts",
|
2026-05-21 12:56:12 -04:00
|
|
|
"**/relay-reconnect.spec.ts",
|
2026-06-25 09:25:34 -07:00
|
|
|
"**/relay-reconnect-affordance.spec.ts",
|
2026-04-03 18:41:31 -07:00
|
|
|
"**/workflows.spec.ts",
|
2026-05-23 12:03:38 -04:00
|
|
|
"**/identity-archive.spec.ts",
|
2026-05-23 13:58:01 -04:00
|
|
|
"**/identity-archive-hide.spec.ts",
|
2026-06-25 09:25:34 -07:00
|
|
|
"**/relay-connectivity.spec.ts",
|
|
|
|
|
"**/unread-pill.spec.ts",
|
2026-06-19 10:12:42 -04:00
|
|
|
"**/sidebar-more-unread-overlap.spec.ts",
|
2026-06-25 09:25:34 -07:00
|
|
|
"**/home-collapsed-top-chrome.spec.ts",
|
2026-07-05 09:37:16 -07:00
|
|
|
"**/top-chrome-zoom-clearance.spec.ts",
|
2026-06-25 09:25:34 -07:00
|
|
|
"**/thread-unread.spec.ts",
|
2026-07-01 11:55:30 -06:00
|
|
|
"**/workspace-rail.spec.ts",
|
2026-06-25 09:40:26 -07:00
|
|
|
"**/thread-reply-anchor-roleplay.spec.ts",
|
2026-06-30 18:55:08 -04:00
|
|
|
"**/threadpane-ultrawide.spec.ts",
|
2026-06-25 09:25:34 -07:00
|
|
|
"**/animated-avatar.spec.ts",
|
|
|
|
|
"**/reminders.spec.ts",
|
|
|
|
|
"**/virtualization.spec.ts",
|
2026-06-18 20:40:05 -04:00
|
|
|
"**/scroll-history.spec.ts",
|
2026-07-02 10:36:11 -04:00
|
|
|
"**/channel-dense-second-reach.spec.ts",
|
2026-07-04 11:51:58 -04:00
|
|
|
"**/channel-window-mock-paging.spec.ts",
|
|
|
|
|
"**/live-broadcast-reply-timeline.spec.ts",
|
2026-06-30 10:58:57 -04:00
|
|
|
"**/overscroll-boundary.spec.ts",
|
2026-06-29 08:56:48 -06:00
|
|
|
"**/cold-switch-longtask.perf.ts",
|
|
|
|
|
"**/timeline-no-shift.spec.ts",
|
2026-06-30 18:31:47 -04:00
|
|
|
"**/human-edit-agent-content.spec.ts",
|
2026-07-01 14:28:58 -04:00
|
|
|
"**/reaction-order.spec.ts",
|
2026-07-07 11:19:49 -04:00
|
|
|
"**/reaction-names.spec.ts",
|
2026-07-02 16:15:44 -04:00
|
|
|
"**/send-channel-binding.spec.ts",
|
2026-07-07 17:29:29 +02:00
|
|
|
"**/project-commit-detail.spec.ts",
|
2026-07-06 15:01:09 -04:00
|
|
|
"**/persona-model-combobox-screenshots.spec.ts",
|
2026-07-06 17:40:57 -04:00
|
|
|
"**/drafts-screenshots.spec.ts",
|
2026-07-06 16:31:22 -07:00
|
|
|
"**/channel-sort.spec.ts",
|
2026-03-10 17:44:39 -04:00
|
|
|
],
|
2026-03-09 19:16:43 -07:00
|
|
|
use: {
|
|
|
|
|
...devices["Desktop Chrome"],
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
name: "integration",
|
2026-03-10 17:56:17 -07:00
|
|
|
testMatch: [
|
2026-04-08 21:04:09 -07:00
|
|
|
"**/agents.spec.ts",
|
2026-04-22 15:06:35 -06:00
|
|
|
"**/onboarding.spec.ts",
|
2026-03-10 17:56:17 -07:00
|
|
|
"**/stream.spec.ts",
|
|
|
|
|
"**/integration.spec.ts",
|
|
|
|
|
"**/profile.spec.ts",
|
2026-06-05 22:00:37 +01:00
|
|
|
"**/sidebar.spec.ts",
|
2026-06-17 18:48:35 +01:00
|
|
|
"**/sidebar-relay-card.spec.ts",
|
2026-03-12 10:21:11 -07:00
|
|
|
"**/tokens.spec.ts",
|
2026-05-15 10:43:00 -04:00
|
|
|
"**/persona-env-vars.spec.ts",
|
2026-06-25 14:10:06 -04:00
|
|
|
"**/persona-sync.spec.ts",
|
2026-06-02 10:28:20 -04:00
|
|
|
"**/mesh-compute.spec.ts",
|
2026-07-04 11:51:58 -04:00
|
|
|
"**/parity-ancestor-island.spec.ts",
|
2026-03-10 17:56:17 -07:00
|
|
|
],
|
2026-03-09 19:16:43 -07:00
|
|
|
use: {
|
|
|
|
|
...devices["Desktop Chrome"],
|
|
|
|
|
},
|
2026-06-01 18:48:37 -04:00
|
|
|
expect: {
|
|
|
|
|
timeout: process.env.CI ? 15_000 : 10_000,
|
|
|
|
|
},
|
2026-03-09 19:16:43 -07:00
|
|
|
},
|
|
|
|
|
],
|
|
|
|
|
webServer: {
|
|
|
|
|
command: "python3 -m http.server 4173 -d dist",
|
|
|
|
|
cwd: ".",
|
|
|
|
|
reuseExistingServer: !process.env.CI,
|
|
|
|
|
url: "http://127.0.0.1:4173",
|
|
|
|
|
},
|
|
|
|
|
});
|