| 
									
										
										
										
											2025-03-02 20:47:57 +01:00
										 |  |  | import { defineConfig, devices } from "@playwright/test"; | 
					
						
							| 
									
										
										
										
											2024-08-07 19:09:36 +03:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-03-02 20:47:57 +01:00
										 |  |  | const SERVER_URL = "http://127.0.0.1:8082"; | 
					
						
							| 
									
										
										
										
											2025-01-11 00:55:48 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-07 19:09:36 +03:00
										 |  |  | /** | 
					
						
							|  |  |  |  * Read environment variables from file. | 
					
						
							|  |  |  |  * https://github.com/motdotla/dotenv
 | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | // import dotenv from 'dotenv';
 | 
					
						
							| 
									
										
										
										
											2025-01-11 00:13:46 +02:00
										 |  |  | // import path from 'path';
 | 
					
						
							| 
									
										
										
										
											2024-08-07 19:09:36 +03:00
										 |  |  | // dotenv.config({ path: path.resolve(__dirname, '.env') });
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /** | 
					
						
							|  |  |  |  * See https://playwright.dev/docs/test-configuration.
 | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | export default defineConfig({ | 
					
						
							| 
									
										
										
										
											2025-03-02 20:47:57 +01:00
										 |  |  |     testDir: "./e2e", | 
					
						
							|  |  |  |     /* 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, | 
					
						
							|  |  |  |     /* Opt out of parallel tests on CI. */ | 
					
						
							|  |  |  |     workers: process.env.CI ? 1 : undefined, | 
					
						
							|  |  |  |     /* 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. */ | 
					
						
							|  |  |  |     use: { | 
					
						
							|  |  |  |         /* Base URL to use in actions like `await page.goto('/')`. */ | 
					
						
							|  |  |  |         baseURL: SERVER_URL, | 
					
						
							| 
									
										
										
										
											2024-08-14 23:03:36 +03:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-03-02 20:47:57 +01:00
										 |  |  |         /* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */ | 
					
						
							|  |  |  |         trace: "on-first-retry" | 
					
						
							| 
									
										
										
										
											2024-08-07 19:09:36 +03:00
										 |  |  |     }, | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-03-02 20:47:57 +01:00
										 |  |  |     /* Configure projects for major browsers */ | 
					
						
							|  |  |  |     projects: [ | 
					
						
							|  |  |  |         { | 
					
						
							|  |  |  |             name: "chromium", | 
					
						
							|  |  |  |             use: { ...devices["Desktop Chrome"] } | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         // {
 | 
					
						
							|  |  |  |         //   name: 'firefox',
 | 
					
						
							|  |  |  |         //   use: { ...devices['Desktop Firefox'] },
 | 
					
						
							|  |  |  |         // },
 | 
					
						
							| 
									
										
										
										
											2024-08-07 19:09:36 +03:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-03-02 20:47:57 +01:00
										 |  |  |         // {
 | 
					
						
							|  |  |  |         //   name: 'webkit',
 | 
					
						
							|  |  |  |         //   use: { ...devices['Desktop Safari'] },
 | 
					
						
							|  |  |  |         // },
 | 
					
						
							| 
									
										
										
										
											2025-01-09 18:07:02 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-03-02 20:47:57 +01:00
										 |  |  |         /* Test against mobile viewports. */ | 
					
						
							|  |  |  |         // {
 | 
					
						
							|  |  |  |         //   name: 'Mobile Chrome',
 | 
					
						
							|  |  |  |         //   use: { ...devices['Pixel 5'] },
 | 
					
						
							|  |  |  |         // },
 | 
					
						
							|  |  |  |         // {
 | 
					
						
							|  |  |  |         //   name: 'Mobile Safari',
 | 
					
						
							|  |  |  |         //   use: { ...devices['iPhone 12'] },
 | 
					
						
							|  |  |  |         // },
 | 
					
						
							| 
									
										
										
										
											2025-01-09 18:07:02 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-03-02 20:47:57 +01:00
										 |  |  |         /* Test against branded browsers. */ | 
					
						
							|  |  |  |         // {
 | 
					
						
							|  |  |  |         //   name: 'Microsoft Edge',
 | 
					
						
							|  |  |  |         //   use: { ...devices['Desktop Edge'], channel: 'msedge' },
 | 
					
						
							|  |  |  |         // },
 | 
					
						
							|  |  |  |         // {
 | 
					
						
							|  |  |  |         //   name: 'Google Chrome',
 | 
					
						
							|  |  |  |         //   use: { ...devices['Desktop Chrome'], channel: 'chrome' },
 | 
					
						
							|  |  |  |         // },
 | 
					
						
							|  |  |  |     ], | 
					
						
							| 
									
										
										
										
											2025-01-11 00:13:46 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-03-02 20:47:57 +01:00
										 |  |  |     /* Run your local dev server before starting the tests */ | 
					
						
							|  |  |  |     webServer: !process.env.TRILIUM_DOCKER | 
					
						
							|  |  |  |         ? { | 
					
						
							|  |  |  |               command: "npm run test:integration-mem-db-dev", | 
					
						
							|  |  |  |               url: SERVER_URL, | 
					
						
							|  |  |  |               reuseExistingServer: !process.env.CI | 
					
						
							|  |  |  |           } | 
					
						
							|  |  |  |         : undefined | 
					
						
							| 
									
										
										
										
											2024-08-07 19:09:36 +03:00
										 |  |  | }); |