Bloc A - Code mort: - Suppression Studio (components, views, features) - Suppression gamification + services mock (projectService, storageService, gamificationService) - Mise à jour Sidebar, Navbar, locales Bloc B - Frontend: - Suppression modal.tsx deprecated, Modal.stories (doublon Dialog) - Feature flags: PLAYLIST_SEARCH, PLAYLIST_RECOMMENDATIONS, ROLE_MANAGEMENT = true - Suppression 19 tests orphelins, retrait exclusions vitest.config Bloc C - Backend: - Extraction routes_auth.go depuis router.go Bloc D - Rust: - Suppression security_legacy.rs (code mort, patterns déjà dans security/)
3550 lines
No EOL
239 KiB
JSON
3550 lines
No EOL
239 KiB
JSON
{
|
|
"config": {
|
|
"configFile": "/home/senke/git/talas/veza/apps/web/playwright.config.ts",
|
|
"rootDir": "/home/senke/git/talas/veza/apps/web/e2e/tests",
|
|
"forbidOnly": true,
|
|
"fullyParallel": true,
|
|
"globalSetup": "/home/senke/git/talas/veza/apps/web/e2e/global-setup.ts",
|
|
"globalTeardown": null,
|
|
"globalTimeout": 0,
|
|
"grep": {},
|
|
"grepInvert": null,
|
|
"maxFailures": 0,
|
|
"metadata": {
|
|
"actualWorkers": 1
|
|
},
|
|
"preserveOutput": "always",
|
|
"projects": [
|
|
{
|
|
"outputDir": "/home/senke/git/talas/veza/apps/web/test-results",
|
|
"repeatEach": 1,
|
|
"retries": 2,
|
|
"metadata": {
|
|
"actualWorkers": 1
|
|
},
|
|
"id": "chromium",
|
|
"name": "chromium",
|
|
"testDir": "/home/senke/git/talas/veza/apps/web/e2e/tests",
|
|
"testIgnore": [],
|
|
"testMatch": [
|
|
"**/*.@(spec|test).?(c|m)[jt]s?(x)"
|
|
],
|
|
"timeout": 60000
|
|
},
|
|
{
|
|
"outputDir": "/home/senke/git/talas/veza/apps/web/test-results",
|
|
"repeatEach": 1,
|
|
"retries": 2,
|
|
"metadata": {
|
|
"actualWorkers": 1
|
|
},
|
|
"id": "firefox",
|
|
"name": "firefox",
|
|
"testDir": "/home/senke/git/talas/veza/apps/web/e2e/tests",
|
|
"testIgnore": [],
|
|
"testMatch": [
|
|
"**/*.@(spec|test).?(c|m)[jt]s?(x)"
|
|
],
|
|
"timeout": 60000
|
|
},
|
|
{
|
|
"outputDir": "/home/senke/git/talas/veza/apps/web/test-results",
|
|
"repeatEach": 1,
|
|
"retries": 2,
|
|
"metadata": {
|
|
"actualWorkers": 1
|
|
},
|
|
"id": "webkit",
|
|
"name": "webkit",
|
|
"testDir": "/home/senke/git/talas/veza/apps/web/e2e/tests",
|
|
"testIgnore": [],
|
|
"testMatch": [
|
|
"**/*.@(spec|test).?(c|m)[jt]s?(x)"
|
|
],
|
|
"timeout": 60000
|
|
},
|
|
{
|
|
"outputDir": "/home/senke/git/talas/veza/apps/web/test-results",
|
|
"repeatEach": 1,
|
|
"retries": 2,
|
|
"metadata": {
|
|
"actualWorkers": 1
|
|
},
|
|
"id": "msedge",
|
|
"name": "msedge",
|
|
"testDir": "/home/senke/git/talas/veza/apps/web/e2e/tests",
|
|
"testIgnore": [],
|
|
"testMatch": [
|
|
"**/*.@(spec|test).?(c|m)[jt]s?(x)"
|
|
],
|
|
"timeout": 60000
|
|
}
|
|
],
|
|
"quiet": false,
|
|
"reporter": [
|
|
[
|
|
"html",
|
|
null
|
|
],
|
|
[
|
|
"json",
|
|
{
|
|
"outputFile": "e2e-results.json"
|
|
}
|
|
]
|
|
],
|
|
"reportSlowTests": {
|
|
"max": 5,
|
|
"threshold": 300000
|
|
},
|
|
"runAgents": "none",
|
|
"shard": null,
|
|
"tags": [],
|
|
"updateSnapshots": "missing",
|
|
"updateSourceMethod": "patch",
|
|
"version": "1.58.2",
|
|
"workers": 1,
|
|
"webServer": {
|
|
"command": "npm run dev",
|
|
"url": "http://localhost:5173",
|
|
"reuseExistingServer": false,
|
|
"timeout": 120000
|
|
}
|
|
},
|
|
"suites": [
|
|
{
|
|
"title": "auth.spec.ts",
|
|
"file": "auth.spec.ts",
|
|
"column": 0,
|
|
"line": 0,
|
|
"specs": [],
|
|
"suites": [
|
|
{
|
|
"title": "Authentication Flow",
|
|
"file": "auth.spec.ts",
|
|
"line": 25,
|
|
"column": 6,
|
|
"specs": [
|
|
{
|
|
"title": "should login successfully with valid credentials",
|
|
"ok": false,
|
|
"tags": [],
|
|
"tests": [
|
|
{
|
|
"timeout": 60000,
|
|
"annotations": [],
|
|
"expectedStatus": "passed",
|
|
"projectId": "chromium",
|
|
"projectName": "chromium",
|
|
"results": [
|
|
{
|
|
"workerIndex": 0,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 17897,
|
|
"error": {
|
|
"message": "TimeoutError: page.waitForURL: Timeout 15000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================",
|
|
"stack": "TimeoutError: page.waitForURL: Timeout 15000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:60:36",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts",
|
|
"column": 36,
|
|
"line": 60
|
|
},
|
|
"snippet": " 58 |\n 59 | // Soumettre le formulaire\n> 60 | const navigationPromise = page.waitForURL(\n | ^\n 61 | (url) => url.pathname === '/dashboard' || url.pathname === '/',\n 62 | { timeout: 15000 }\n 63 | );"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts",
|
|
"column": 36,
|
|
"line": 60
|
|
},
|
|
"message": "TimeoutError: page.waitForURL: Timeout 15000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================\n\n 58 |\n 59 | // Soumettre le formulaire\n> 60 | const navigationPromise = page.waitForURL(\n | ^\n 61 | (url) => url.pathname === '/dashboard' || url.pathname === '/',\n 62 | { timeout: 15000 }\n 63 | );\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:60:36"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Login with valid credentials\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[type=\"email\"], input[name=\"email\"] with value: e2e@test.com\n"
|
|
},
|
|
{
|
|
"text": "✅ [FILL] Field input[type=\"email\"], input[name=\"email\"] filled successfully\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[type=\"password\"], input[name=\"password\"] with value: Xk9$mP2#vL7@nQ4!wR8\n"
|
|
},
|
|
{
|
|
"text": "✅ [FILL] Field input[type=\"password\"], input[name=\"password\"] filled successfully\n"
|
|
},
|
|
{
|
|
"text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
|
|
},
|
|
{
|
|
"text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
|
|
},
|
|
{
|
|
"text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
|
|
},
|
|
{
|
|
"text": "🚀 [FORM SUBMIT] Submitting form...\n"
|
|
},
|
|
{
|
|
"text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
}
|
|
],
|
|
"stderr": [],
|
|
"retry": 0,
|
|
"startTime": "2026-02-14T13:27:56.169Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-74377-ully-with-valid-credentials-chromium/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-74377-ully-with-valid-credentials-chromium/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-74377-ully-with-valid-credentials-chromium/error-context.md"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts",
|
|
"column": 36,
|
|
"line": 60
|
|
}
|
|
},
|
|
{
|
|
"workerIndex": 1,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 18146,
|
|
"error": {
|
|
"message": "TimeoutError: page.waitForURL: Timeout 15000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================",
|
|
"stack": "TimeoutError: page.waitForURL: Timeout 15000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:60:36",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts",
|
|
"column": 36,
|
|
"line": 60
|
|
},
|
|
"snippet": " 58 |\n 59 | // Soumettre le formulaire\n> 60 | const navigationPromise = page.waitForURL(\n | ^\n 61 | (url) => url.pathname === '/dashboard' || url.pathname === '/',\n 62 | { timeout: 15000 }\n 63 | );"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts",
|
|
"column": 36,
|
|
"line": 60
|
|
},
|
|
"message": "TimeoutError: page.waitForURL: Timeout 15000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================\n\n 58 |\n 59 | // Soumettre le formulaire\n> 60 | const navigationPromise = page.waitForURL(\n | ^\n 61 | (url) => url.pathname === '/dashboard' || url.pathname === '/',\n 62 | { timeout: 15000 }\n 63 | );\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:60:36"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Login with valid credentials\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[type=\"email\"], input[name=\"email\"] with value: e2e@test.com\n"
|
|
},
|
|
{
|
|
"text": "✅ [FILL] Field input[type=\"email\"], input[name=\"email\"] filled successfully\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[type=\"password\"], input[name=\"password\"] with value: Xk9$mP2#vL7@nQ4!wR8\n"
|
|
},
|
|
{
|
|
"text": "✅ [FILL] Field input[type=\"password\"], input[name=\"password\"] filled successfully\n"
|
|
},
|
|
{
|
|
"text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
|
|
},
|
|
{
|
|
"text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
|
|
},
|
|
{
|
|
"text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
|
|
},
|
|
{
|
|
"text": "🚀 [FORM SUBMIT] Submitting form...\n"
|
|
},
|
|
{
|
|
"text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
}
|
|
],
|
|
"stderr": [],
|
|
"retry": 1,
|
|
"startTime": "2026-02-14T13:28:15.317Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-74377-ully-with-valid-credentials-chromium-retry1/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-74377-ully-with-valid-credentials-chromium-retry1/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-74377-ully-with-valid-credentials-chromium-retry1/error-context.md"
|
|
},
|
|
{
|
|
"name": "trace",
|
|
"contentType": "application/zip",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-74377-ully-with-valid-credentials-chromium-retry1/trace.zip"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts",
|
|
"column": 36,
|
|
"line": 60
|
|
}
|
|
},
|
|
{
|
|
"workerIndex": 2,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 17757,
|
|
"error": {
|
|
"message": "TimeoutError: page.waitForURL: Timeout 15000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================",
|
|
"stack": "TimeoutError: page.waitForURL: Timeout 15000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:60:36",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts",
|
|
"column": 36,
|
|
"line": 60
|
|
},
|
|
"snippet": " 58 |\n 59 | // Soumettre le formulaire\n> 60 | const navigationPromise = page.waitForURL(\n | ^\n 61 | (url) => url.pathname === '/dashboard' || url.pathname === '/',\n 62 | { timeout: 15000 }\n 63 | );"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts",
|
|
"column": 36,
|
|
"line": 60
|
|
},
|
|
"message": "TimeoutError: page.waitForURL: Timeout 15000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================\n\n 58 |\n 59 | // Soumettre le formulaire\n> 60 | const navigationPromise = page.waitForURL(\n | ^\n 61 | (url) => url.pathname === '/dashboard' || url.pathname === '/',\n 62 | { timeout: 15000 }\n 63 | );\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:60:36"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Login with valid credentials\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[type=\"email\"], input[name=\"email\"] with value: e2e@test.com\n"
|
|
},
|
|
{
|
|
"text": "✅ [FILL] Field input[type=\"email\"], input[name=\"email\"] filled successfully\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[type=\"password\"], input[name=\"password\"] with value: Xk9$mP2#vL7@nQ4!wR8\n"
|
|
},
|
|
{
|
|
"text": "✅ [FILL] Field input[type=\"password\"], input[name=\"password\"] filled successfully\n"
|
|
},
|
|
{
|
|
"text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
|
|
},
|
|
{
|
|
"text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
|
|
},
|
|
{
|
|
"text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
|
|
},
|
|
{
|
|
"text": "🚀 [FORM SUBMIT] Submitting form...\n"
|
|
},
|
|
{
|
|
"text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
}
|
|
],
|
|
"stderr": [],
|
|
"retry": 2,
|
|
"startTime": "2026-02-14T13:28:35.390Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-74377-ully-with-valid-credentials-chromium-retry2/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-74377-ully-with-valid-credentials-chromium-retry2/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-74377-ully-with-valid-credentials-chromium-retry2/error-context.md"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts",
|
|
"column": 36,
|
|
"line": 60
|
|
}
|
|
}
|
|
],
|
|
"status": "unexpected"
|
|
}
|
|
],
|
|
"id": "d748ac400d08b85935ef-efd14549b37f77aa6096",
|
|
"file": "auth.spec.ts",
|
|
"line": 41,
|
|
"column": 3
|
|
},
|
|
{
|
|
"title": "should show error with invalid credentials",
|
|
"ok": false,
|
|
"tags": [],
|
|
"tests": [
|
|
{
|
|
"timeout": 60000,
|
|
"annotations": [],
|
|
"expectedStatus": "passed",
|
|
"projectId": "chromium",
|
|
"projectName": "chromium",
|
|
"results": [
|
|
{
|
|
"workerIndex": 3,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 12177,
|
|
"error": {
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('[data-testid=\"toast-alert\"], [role=\"alert\"], .text-destructive, .text-red-700').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('[data-testid=\"toast-alert\"], [role=\"alert\"], .text-destructive, .text-red-700').first()\u001b[22m\n",
|
|
"stack": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('[data-testid=\"toast-alert\"], [role=\"alert\"], .text-destructive, .text-red-700').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('[data-testid=\"toast-alert\"], [role=\"alert\"], .text-destructive, .text-red-700').first()\u001b[22m\n\n at waitForToast (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:717:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:122:32",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 717
|
|
},
|
|
"snippet": " at ../utils/test-helpers.ts:717\n\n 715 | }\n 716 |\n> 717 | await expect(toast).toBeVisible({ timeout });\n | ^\n 718 |\n 719 | const text = (await toast.textContent()) || '';\n 720 | console.log(`✅ [TOAST] ${type} message: ${text}`);"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 717
|
|
},
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('[data-testid=\"toast-alert\"], [role=\"alert\"], .text-destructive, .text-red-700').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('[data-testid=\"toast-alert\"], [role=\"alert\"], .text-destructive, .text-red-700').first()\u001b[22m\n\n\n at ../utils/test-helpers.ts:717\n\n 715 | }\n 716 |\n> 717 | await expect(toast).toBeVisible({ timeout });\n | ^\n 718 |\n 719 | const text = (await toast.textContent()) || '';\n 720 | console.log(`✅ [TOAST] ${type} message: ${text}`);\n at waitForToast (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:717:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:122:32"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Login with invalid credentials\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[type=\"email\"], input[name=\"email\"] with value: wrong@example.com\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "✅ [FILL] Field input[type=\"email\"], input[name=\"email\"] filled successfully\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[type=\"password\"], input[name=\"password\"] with value: wrongpassword\n"
|
|
},
|
|
{
|
|
"text": "✅ [FILL] Field input[type=\"password\"], input[name=\"password\"] filled successfully\n"
|
|
},
|
|
{
|
|
"text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
|
|
},
|
|
{
|
|
"text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
|
|
},
|
|
{
|
|
"text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
|
|
},
|
|
{
|
|
"text": "🚀 [FORM SUBMIT] Submitting form...\n"
|
|
},
|
|
{
|
|
"text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
|
|
},
|
|
{
|
|
"text": "🔔 [TOAST] Waiting for error message...\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
}
|
|
],
|
|
"stderr": [],
|
|
"retry": 0,
|
|
"startTime": "2026-02-14T13:28:54.533Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-22fb7-or-with-invalid-credentials-chromium/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-22fb7-or-with-invalid-credentials-chromium/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-22fb7-or-with-invalid-credentials-chromium/error-context.md"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 717
|
|
}
|
|
},
|
|
{
|
|
"workerIndex": 4,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 12678,
|
|
"error": {
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('[data-testid=\"toast-alert\"], [role=\"alert\"], .text-destructive, .text-red-700').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('[data-testid=\"toast-alert\"], [role=\"alert\"], .text-destructive, .text-red-700').first()\u001b[22m\n",
|
|
"stack": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('[data-testid=\"toast-alert\"], [role=\"alert\"], .text-destructive, .text-red-700').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('[data-testid=\"toast-alert\"], [role=\"alert\"], .text-destructive, .text-red-700').first()\u001b[22m\n\n at waitForToast (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:717:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:122:32",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 717
|
|
},
|
|
"snippet": " at ../utils/test-helpers.ts:717\n\n 715 | }\n 716 |\n> 717 | await expect(toast).toBeVisible({ timeout });\n | ^\n 718 |\n 719 | const text = (await toast.textContent()) || '';\n 720 | console.log(`✅ [TOAST] ${type} message: ${text}`);"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 717
|
|
},
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('[data-testid=\"toast-alert\"], [role=\"alert\"], .text-destructive, .text-red-700').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('[data-testid=\"toast-alert\"], [role=\"alert\"], .text-destructive, .text-red-700').first()\u001b[22m\n\n\n at ../utils/test-helpers.ts:717\n\n 715 | }\n 716 |\n> 717 | await expect(toast).toBeVisible({ timeout });\n | ^\n 718 |\n 719 | const text = (await toast.textContent()) || '';\n 720 | console.log(`✅ [TOAST] ${type} message: ${text}`);\n at waitForToast (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:717:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:122:32"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Login with invalid credentials\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[type=\"email\"], input[name=\"email\"] with value: wrong@example.com\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "✅ [FILL] Field input[type=\"email\"], input[name=\"email\"] filled successfully\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[type=\"password\"], input[name=\"password\"] with value: wrongpassword\n"
|
|
},
|
|
{
|
|
"text": "✅ [FILL] Field input[type=\"password\"], input[name=\"password\"] filled successfully\n"
|
|
},
|
|
{
|
|
"text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
|
|
},
|
|
{
|
|
"text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
|
|
},
|
|
{
|
|
"text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
|
|
},
|
|
{
|
|
"text": "🚀 [FORM SUBMIT] Submitting form...\n"
|
|
},
|
|
{
|
|
"text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
|
|
},
|
|
{
|
|
"text": "🔔 [TOAST] Waiting for error message...\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
}
|
|
],
|
|
"stderr": [],
|
|
"retry": 1,
|
|
"startTime": "2026-02-14T13:29:08.159Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-22fb7-or-with-invalid-credentials-chromium-retry1/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-22fb7-or-with-invalid-credentials-chromium-retry1/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-22fb7-or-with-invalid-credentials-chromium-retry1/error-context.md"
|
|
},
|
|
{
|
|
"name": "trace",
|
|
"contentType": "application/zip",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-22fb7-or-with-invalid-credentials-chromium-retry1/trace.zip"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 717
|
|
}
|
|
},
|
|
{
|
|
"workerIndex": 5,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 12292,
|
|
"error": {
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('[data-testid=\"toast-alert\"], [role=\"alert\"], .text-destructive, .text-red-700').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('[data-testid=\"toast-alert\"], [role=\"alert\"], .text-destructive, .text-red-700').first()\u001b[22m\n",
|
|
"stack": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('[data-testid=\"toast-alert\"], [role=\"alert\"], .text-destructive, .text-red-700').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('[data-testid=\"toast-alert\"], [role=\"alert\"], .text-destructive, .text-red-700').first()\u001b[22m\n\n at waitForToast (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:717:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:122:32",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 717
|
|
},
|
|
"snippet": " at ../utils/test-helpers.ts:717\n\n 715 | }\n 716 |\n> 717 | await expect(toast).toBeVisible({ timeout });\n | ^\n 718 |\n 719 | const text = (await toast.textContent()) || '';\n 720 | console.log(`✅ [TOAST] ${type} message: ${text}`);"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 717
|
|
},
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('[data-testid=\"toast-alert\"], [role=\"alert\"], .text-destructive, .text-red-700').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('[data-testid=\"toast-alert\"], [role=\"alert\"], .text-destructive, .text-red-700').first()\u001b[22m\n\n\n at ../utils/test-helpers.ts:717\n\n 715 | }\n 716 |\n> 717 | await expect(toast).toBeVisible({ timeout });\n | ^\n 718 |\n 719 | const text = (await toast.textContent()) || '';\n 720 | console.log(`✅ [TOAST] ${type} message: ${text}`);\n at waitForToast (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:717:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:122:32"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Login with invalid credentials\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[type=\"email\"], input[name=\"email\"] with value: wrong@example.com\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "✅ [FILL] Field input[type=\"email\"], input[name=\"email\"] filled successfully\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[type=\"password\"], input[name=\"password\"] with value: wrongpassword\n"
|
|
},
|
|
{
|
|
"text": "✅ [FILL] Field input[type=\"password\"], input[name=\"password\"] filled successfully\n"
|
|
},
|
|
{
|
|
"text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
|
|
},
|
|
{
|
|
"text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
|
|
},
|
|
{
|
|
"text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
|
|
},
|
|
{
|
|
"text": "🚀 [FORM SUBMIT] Submitting form...\n"
|
|
},
|
|
{
|
|
"text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
|
|
},
|
|
{
|
|
"text": "🔔 [TOAST] Waiting for error message...\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
}
|
|
],
|
|
"stderr": [],
|
|
"retry": 2,
|
|
"startTime": "2026-02-14T13:29:22.437Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-22fb7-or-with-invalid-credentials-chromium-retry2/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-22fb7-or-with-invalid-credentials-chromium-retry2/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-22fb7-or-with-invalid-credentials-chromium-retry2/error-context.md"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 717
|
|
}
|
|
}
|
|
],
|
|
"status": "unexpected"
|
|
}
|
|
],
|
|
"id": "d748ac400d08b85935ef-32f56b95de6bdc3a9955",
|
|
"file": "auth.spec.ts",
|
|
"line": 107,
|
|
"column": 3
|
|
},
|
|
{
|
|
"title": "should complete login with 2FA code",
|
|
"ok": true,
|
|
"tags": [],
|
|
"tests": [
|
|
{
|
|
"timeout": 60000,
|
|
"annotations": [
|
|
{
|
|
"type": "skip",
|
|
"description": "Set E2E_2FA_CODE (and optionally E2E_2FA_EMAIL, E2E_2FA_PASSWORD) to run",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts",
|
|
"line": 136,
|
|
"column": 10
|
|
}
|
|
}
|
|
],
|
|
"expectedStatus": "skipped",
|
|
"projectId": "chromium",
|
|
"projectName": "chromium",
|
|
"results": [
|
|
{
|
|
"workerIndex": 6,
|
|
"parallelIndex": 0,
|
|
"status": "skipped",
|
|
"duration": 190,
|
|
"errors": [],
|
|
"stdout": [
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "✅ [AUTH TEST] No console errors\n"
|
|
},
|
|
{
|
|
"text": "✅ [AUTH TEST] No network errors\n"
|
|
}
|
|
],
|
|
"stderr": [],
|
|
"retry": 0,
|
|
"startTime": "2026-02-14T13:29:35.883Z",
|
|
"annotations": [
|
|
{
|
|
"type": "skip",
|
|
"description": "Set E2E_2FA_CODE (and optionally E2E_2FA_EMAIL, E2E_2FA_PASSWORD) to run",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts",
|
|
"line": 136,
|
|
"column": 10
|
|
}
|
|
}
|
|
],
|
|
"attachments": []
|
|
}
|
|
],
|
|
"status": "skipped"
|
|
}
|
|
],
|
|
"id": "d748ac400d08b85935ef-a67a3abd1ecee7e014a4",
|
|
"file": "auth.spec.ts",
|
|
"line": 135,
|
|
"column": 3
|
|
},
|
|
{
|
|
"title": "should register a new user successfully",
|
|
"ok": false,
|
|
"tags": [],
|
|
"tests": [
|
|
{
|
|
"timeout": 60000,
|
|
"annotations": [],
|
|
"expectedStatus": "passed",
|
|
"projectId": "chromium",
|
|
"projectName": "chromium",
|
|
"results": [
|
|
{
|
|
"workerIndex": 6,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 12052,
|
|
"error": {
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n",
|
|
"stack": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n\n at fillField (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:1043:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:181:11",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
},
|
|
"snippet": " at ../utils/test-helpers.ts:1043\n\n 1041 |\n 1042 | const field = page.locator(selector).first();\n> 1043 | await expect(field).toBeVisible({ timeout: 10000 });\n | ^\n 1044 | await field.fill(value);\n 1045 |\n 1046 | console.log(`✅ [FILL] Field ${selector} filled successfully`);"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
},
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n\n\n at ../utils/test-helpers.ts:1043\n\n 1041 |\n 1042 | const field = page.locator(selector).first();\n> 1043 | await expect(field).toBeVisible({ timeout: 10000 });\n | ^\n 1044 | await field.fill(value);\n 1045 |\n 1046 | console.log(`✅ [FILL] Field ${selector} filled successfully`);\n at fillField (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:1043:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:181:11"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: User registration\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] The above error occurred in one of your React components:\n\n at Lazy\n at Suspense\n at LazyErrorBoundary (http://localhost:5173/src/components/ui/lazy-component/LazyErrorBoundary.tsx:10:5)\n at WrappedLazyComponent (http://localhost:5173/src/components/ui/lazy-component/createLazyComponent.tsx:44:23)\n at ErrorBoundary (http://localhost:5173/src/components/ErrorBoundary.tsx:11:5)\n at PublicRoute (http://localhost:5173/src/router/PublicRoute.tsx:23:31)\n at RenderedRoute (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4107:5)\n at Routes (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4577:5)\n at AppRouter\n at AudioProvider (http://localhost:5173/src/context/audio-context/AudioContext.tsx:30:3)\n at ToastProvider (http://localhost:5173/src/components/feedback/ToastProvider.tsx:67:3)\n at ErrorBoundary (http://localhost:5173/src/components/ui/ErrorBoundary.tsx:10:5)\n at App (http://localhost:5173/src/app/App.tsx:39:17)\n at Router (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4520:15)\n at BrowserRouter (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:5266:5)\n at ThemeProvider (http://localhost:5173/src/components/theme/ThemeProvider.tsx:26:3)\n at QueryClientProvider (http://localhost:5173/node_modules/.vite/deps/@tanstack_react-query.js?v=8b912487:3089:3)\n\nReact will try to recreate this component tree from scratch using the error boundary you provided, LazyErrorBoundary.\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[name=\"email\"], input#email with value: test-1771075777910@example.com\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - The above error occurred in one of your React components:\n\n at Lazy\n at Suspense\n at LazyErrorBoundary (http://localhost:5173/src/components/ui/lazy-component/LazyErrorBoundary.tsx:10:5)\n at WrappedLazyComponent (http://localhost:5173/src/components/ui/lazy-component/createLazyComponent.tsx:44:23)\n at ErrorBoundary (http://localhost:5173/src/components/ErrorBoundary.tsx:11:5)\n at PublicRoute (http://localhost:5173/src/router/PublicRoute.tsx:23:31)\n at RenderedRoute (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4107:5)\n at Routes (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4577:5)\n at AppRouter\n at AudioProvider (http://localhost:5173/src/context/audio-context/AudioContext.tsx:30:3)\n at ToastProvider (http://localhost:5173/src/components/feedback/ToastProvider.tsx:67:3)\n at ErrorBoundary (http://localhost:5173/src/components/ui/ErrorBoundary.tsx:10:5)\n at App (http://localhost:5173/src/app/App.tsx:39:17)\n at Router (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4520:15)\n at BrowserRouter (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:5266:5)\n at ThemeProvider (http://localhost:5173/src/components/theme/ThemeProvider.tsx:26:3)\n at QueryClientProvider (http://localhost:5173/node_modules/.vite/deps/@tanstack_react-query.js?v=8b912487:3089:3)\n\nReact will try to recreate this component tree from scratch using the error boundary you provided, LazyErrorBoundary.\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (4):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
}
|
|
],
|
|
"stderr": [],
|
|
"retry": 0,
|
|
"startTime": "2026-02-14T13:29:36.197Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-53dd2-ter-a-new-user-successfully-chromium/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-53dd2-ter-a-new-user-successfully-chromium/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-53dd2-ter-a-new-user-successfully-chromium/error-context.md"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
}
|
|
},
|
|
{
|
|
"workerIndex": 7,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 12535,
|
|
"error": {
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n",
|
|
"stack": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n\n at fillField (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:1043:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:181:11",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
},
|
|
"snippet": " at ../utils/test-helpers.ts:1043\n\n 1041 |\n 1042 | const field = page.locator(selector).first();\n> 1043 | await expect(field).toBeVisible({ timeout: 10000 });\n | ^\n 1044 | await field.fill(value);\n 1045 |\n 1046 | console.log(`✅ [FILL] Field ${selector} filled successfully`);"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
},
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n\n\n at ../utils/test-helpers.ts:1043\n\n 1041 |\n 1042 | const field = page.locator(selector).first();\n> 1043 | await expect(field).toBeVisible({ timeout: 10000 });\n | ^\n 1044 | await field.fill(value);\n 1045 |\n 1046 | console.log(`✅ [FILL] Field ${selector} filled successfully`);\n at fillField (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:1043:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:181:11"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: User registration\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] The above error occurred in one of your React components:\n\n at Lazy\n at Suspense\n at LazyErrorBoundary (http://localhost:5173/src/components/ui/lazy-component/LazyErrorBoundary.tsx:10:5)\n at WrappedLazyComponent (http://localhost:5173/src/components/ui/lazy-component/createLazyComponent.tsx:44:23)\n at ErrorBoundary (http://localhost:5173/src/components/ErrorBoundary.tsx:11:5)\n at PublicRoute (http://localhost:5173/src/router/PublicRoute.tsx:23:31)\n at RenderedRoute (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4107:5)\n at Routes (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4577:5)\n at AppRouter\n at AudioProvider (http://localhost:5173/src/context/audio-context/AudioContext.tsx:30:3)\n at ToastProvider (http://localhost:5173/src/components/feedback/ToastProvider.tsx:67:3)\n at ErrorBoundary (http://localhost:5173/src/components/ui/ErrorBoundary.tsx:10:5)\n at App (http://localhost:5173/src/app/App.tsx:39:17)\n at Router (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4520:15)\n at BrowserRouter (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:5266:5)\n at ThemeProvider (http://localhost:5173/src/components/theme/ThemeProvider.tsx:26:3)\n at QueryClientProvider (http://localhost:5173/node_modules/.vite/deps/@tanstack_react-query.js?v=8b912487:3089:3)\n\nReact will try to recreate this component tree from scratch using the error boundary you provided, LazyErrorBoundary.\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[name=\"email\"], input#email with value: test-1771075791255@example.com\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - The above error occurred in one of your React components:\n\n at Lazy\n at Suspense\n at LazyErrorBoundary (http://localhost:5173/src/components/ui/lazy-component/LazyErrorBoundary.tsx:10:5)\n at WrappedLazyComponent (http://localhost:5173/src/components/ui/lazy-component/createLazyComponent.tsx:44:23)\n at ErrorBoundary (http://localhost:5173/src/components/ErrorBoundary.tsx:11:5)\n at PublicRoute (http://localhost:5173/src/router/PublicRoute.tsx:23:31)\n at RenderedRoute (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4107:5)\n at Routes (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4577:5)\n at AppRouter\n at AudioProvider (http://localhost:5173/src/context/audio-context/AudioContext.tsx:30:3)\n at ToastProvider (http://localhost:5173/src/components/feedback/ToastProvider.tsx:67:3)\n at ErrorBoundary (http://localhost:5173/src/components/ui/ErrorBoundary.tsx:10:5)\n at App (http://localhost:5173/src/app/App.tsx:39:17)\n at Router (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4520:15)\n at BrowserRouter (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:5266:5)\n at ThemeProvider (http://localhost:5173/src/components/theme/ThemeProvider.tsx:26:3)\n at QueryClientProvider (http://localhost:5173/node_modules/.vite/deps/@tanstack_react-query.js?v=8b912487:3089:3)\n\nReact will try to recreate this component tree from scratch using the error boundary you provided, LazyErrorBoundary.\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (4):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
}
|
|
],
|
|
"stderr": [],
|
|
"retry": 1,
|
|
"startTime": "2026-02-14T13:29:49.328Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-53dd2-ter-a-new-user-successfully-chromium-retry1/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-53dd2-ter-a-new-user-successfully-chromium-retry1/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-53dd2-ter-a-new-user-successfully-chromium-retry1/error-context.md"
|
|
},
|
|
{
|
|
"name": "trace",
|
|
"contentType": "application/zip",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-53dd2-ter-a-new-user-successfully-chromium-retry1/trace.zip"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
}
|
|
},
|
|
{
|
|
"workerIndex": 8,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 12005,
|
|
"error": {
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n",
|
|
"stack": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n\n at fillField (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:1043:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:181:11",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
},
|
|
"snippet": " at ../utils/test-helpers.ts:1043\n\n 1041 |\n 1042 | const field = page.locator(selector).first();\n> 1043 | await expect(field).toBeVisible({ timeout: 10000 });\n | ^\n 1044 | await field.fill(value);\n 1045 |\n 1046 | console.log(`✅ [FILL] Field ${selector} filled successfully`);"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
},
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n\n\n at ../utils/test-helpers.ts:1043\n\n 1041 |\n 1042 | const field = page.locator(selector).first();\n> 1043 | await expect(field).toBeVisible({ timeout: 10000 });\n | ^\n 1044 | await field.fill(value);\n 1045 |\n 1046 | console.log(`✅ [FILL] Field ${selector} filled successfully`);\n at fillField (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:1043:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:181:11"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: User registration\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] The above error occurred in one of your React components:\n\n at Lazy\n at Suspense\n at LazyErrorBoundary (http://localhost:5173/src/components/ui/lazy-component/LazyErrorBoundary.tsx:10:5)\n at WrappedLazyComponent (http://localhost:5173/src/components/ui/lazy-component/createLazyComponent.tsx:44:23)\n at ErrorBoundary (http://localhost:5173/src/components/ErrorBoundary.tsx:11:5)\n at PublicRoute (http://localhost:5173/src/router/PublicRoute.tsx:23:31)\n at RenderedRoute (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4107:5)\n at Routes (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4577:5)\n at AppRouter\n at AudioProvider (http://localhost:5173/src/context/audio-context/AudioContext.tsx:30:3)\n at ToastProvider (http://localhost:5173/src/components/feedback/ToastProvider.tsx:67:3)\n at ErrorBoundary (http://localhost:5173/src/components/ui/ErrorBoundary.tsx:10:5)\n at App (http://localhost:5173/src/app/App.tsx:39:17)\n at Router (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4520:15)\n at BrowserRouter (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:5266:5)\n at ThemeProvider (http://localhost:5173/src/components/theme/ThemeProvider.tsx:26:3)\n at QueryClientProvider (http://localhost:5173/node_modules/.vite/deps/@tanstack_react-query.js?v=8b912487:3089:3)\n\nReact will try to recreate this component tree from scratch using the error boundary you provided, LazyErrorBoundary.\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[name=\"email\"], input#email with value: test-1771075805272@example.com\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - The above error occurred in one of your React components:\n\n at Lazy\n at Suspense\n at LazyErrorBoundary (http://localhost:5173/src/components/ui/lazy-component/LazyErrorBoundary.tsx:10:5)\n at WrappedLazyComponent (http://localhost:5173/src/components/ui/lazy-component/createLazyComponent.tsx:44:23)\n at ErrorBoundary (http://localhost:5173/src/components/ErrorBoundary.tsx:11:5)\n at PublicRoute (http://localhost:5173/src/router/PublicRoute.tsx:23:31)\n at RenderedRoute (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4107:5)\n at Routes (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4577:5)\n at AppRouter\n at AudioProvider (http://localhost:5173/src/context/audio-context/AudioContext.tsx:30:3)\n at ToastProvider (http://localhost:5173/src/components/feedback/ToastProvider.tsx:67:3)\n at ErrorBoundary (http://localhost:5173/src/components/ui/ErrorBoundary.tsx:10:5)\n at App (http://localhost:5173/src/app/App.tsx:39:17)\n at Router (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4520:15)\n at BrowserRouter (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:5266:5)\n at ThemeProvider (http://localhost:5173/src/components/theme/ThemeProvider.tsx:26:3)\n at QueryClientProvider (http://localhost:5173/node_modules/.vite/deps/@tanstack_react-query.js?v=8b912487:3089:3)\n\nReact will try to recreate this component tree from scratch using the error boundary you provided, LazyErrorBoundary.\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (4):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
}
|
|
],
|
|
"stderr": [],
|
|
"retry": 2,
|
|
"startTime": "2026-02-14T13:30:03.465Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-53dd2-ter-a-new-user-successfully-chromium-retry2/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-53dd2-ter-a-new-user-successfully-chromium-retry2/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-53dd2-ter-a-new-user-successfully-chromium-retry2/error-context.md"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
}
|
|
}
|
|
],
|
|
"status": "unexpected"
|
|
}
|
|
],
|
|
"id": "d748ac400d08b85935ef-c1f7fb06f3779f5e6fd5",
|
|
"file": "auth.spec.ts",
|
|
"line": 164,
|
|
"column": 3
|
|
},
|
|
{
|
|
"title": "should show error when registering with existing email",
|
|
"ok": false,
|
|
"tags": [],
|
|
"tests": [
|
|
{
|
|
"timeout": 60000,
|
|
"annotations": [],
|
|
"expectedStatus": "passed",
|
|
"projectId": "chromium",
|
|
"projectName": "chromium",
|
|
"results": [
|
|
{
|
|
"workerIndex": 9,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 12024,
|
|
"error": {
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n",
|
|
"stack": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n\n at fillField (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:1043:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:283:11",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
},
|
|
"snippet": " at ../utils/test-helpers.ts:1043\n\n 1041 |\n 1042 | const field = page.locator(selector).first();\n> 1043 | await expect(field).toBeVisible({ timeout: 10000 });\n | ^\n 1044 | await field.fill(value);\n 1045 |\n 1046 | console.log(`✅ [FILL] Field ${selector} filled successfully`);"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
},
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n\n\n at ../utils/test-helpers.ts:1043\n\n 1041 |\n 1042 | const field = page.locator(selector).first();\n> 1043 | await expect(field).toBeVisible({ timeout: 10000 });\n | ^\n 1044 | await field.fill(value);\n 1045 |\n 1046 | console.log(`✅ [FILL] Field ${selector} filled successfully`);\n at fillField (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:1043:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:283:11"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Registration with existing email\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] The above error occurred in one of your React components:\n\n at Lazy\n at Suspense\n at LazyErrorBoundary (http://localhost:5173/src/components/ui/lazy-component/LazyErrorBoundary.tsx:10:5)\n at WrappedLazyComponent (http://localhost:5173/src/components/ui/lazy-component/createLazyComponent.tsx:44:23)\n at ErrorBoundary (http://localhost:5173/src/components/ErrorBoundary.tsx:11:5)\n at PublicRoute (http://localhost:5173/src/router/PublicRoute.tsx:23:31)\n at RenderedRoute (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4107:5)\n at Routes (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4577:5)\n at AppRouter\n at AudioProvider (http://localhost:5173/src/context/audio-context/AudioContext.tsx:30:3)\n at ToastProvider (http://localhost:5173/src/components/feedback/ToastProvider.tsx:67:3)\n at ErrorBoundary (http://localhost:5173/src/components/ui/ErrorBoundary.tsx:10:5)\n at App (http://localhost:5173/src/app/App.tsx:39:17)\n at Router (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4520:15)\n at BrowserRouter (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:5266:5)\n at ThemeProvider (http://localhost:5173/src/components/theme/ThemeProvider.tsx:26:3)\n at QueryClientProvider (http://localhost:5173/node_modules/.vite/deps/@tanstack_react-query.js?v=8b912487:3089:3)\n\nReact will try to recreate this component tree from scratch using the error boundary you provided, LazyErrorBoundary.\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[name=\"email\"], input#email with value: e2e@test.com\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - The above error occurred in one of your React components:\n\n at Lazy\n at Suspense\n at LazyErrorBoundary (http://localhost:5173/src/components/ui/lazy-component/LazyErrorBoundary.tsx:10:5)\n at WrappedLazyComponent (http://localhost:5173/src/components/ui/lazy-component/createLazyComponent.tsx:44:23)\n at ErrorBoundary (http://localhost:5173/src/components/ErrorBoundary.tsx:11:5)\n at PublicRoute (http://localhost:5173/src/router/PublicRoute.tsx:23:31)\n at RenderedRoute (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4107:5)\n at Routes (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4577:5)\n at AppRouter\n at AudioProvider (http://localhost:5173/src/context/audio-context/AudioContext.tsx:30:3)\n at ToastProvider (http://localhost:5173/src/components/feedback/ToastProvider.tsx:67:3)\n at ErrorBoundary (http://localhost:5173/src/components/ui/ErrorBoundary.tsx:10:5)\n at App (http://localhost:5173/src/app/App.tsx:39:17)\n at Router (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4520:15)\n at BrowserRouter (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:5266:5)\n at ThemeProvider (http://localhost:5173/src/components/theme/ThemeProvider.tsx:26:3)\n at QueryClientProvider (http://localhost:5173/node_modules/.vite/deps/@tanstack_react-query.js?v=8b912487:3089:3)\n\nReact will try to recreate this component tree from scratch using the error boundary you provided, LazyErrorBoundary.\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (4):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
}
|
|
],
|
|
"stderr": [],
|
|
"retry": 0,
|
|
"startTime": "2026-02-14T13:30:17.025Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-3c58b-stering-with-existing-email-chromium/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-3c58b-stering-with-existing-email-chromium/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-3c58b-stering-with-existing-email-chromium/error-context.md"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
}
|
|
},
|
|
{
|
|
"workerIndex": 10,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 12472,
|
|
"error": {
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n",
|
|
"stack": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n\n at fillField (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:1043:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:283:11",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
},
|
|
"snippet": " at ../utils/test-helpers.ts:1043\n\n 1041 |\n 1042 | const field = page.locator(selector).first();\n> 1043 | await expect(field).toBeVisible({ timeout: 10000 });\n | ^\n 1044 | await field.fill(value);\n 1045 |\n 1046 | console.log(`✅ [FILL] Field ${selector} filled successfully`);"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
},
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n\n\n at ../utils/test-helpers.ts:1043\n\n 1041 |\n 1042 | const field = page.locator(selector).first();\n> 1043 | await expect(field).toBeVisible({ timeout: 10000 });\n | ^\n 1044 | await field.fill(value);\n 1045 |\n 1046 | console.log(`✅ [FILL] Field ${selector} filled successfully`);\n at fillField (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:1043:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:283:11"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Registration with existing email\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] The above error occurred in one of your React components:\n\n at Lazy\n at Suspense\n at LazyErrorBoundary (http://localhost:5173/src/components/ui/lazy-component/LazyErrorBoundary.tsx:10:5)\n at WrappedLazyComponent (http://localhost:5173/src/components/ui/lazy-component/createLazyComponent.tsx:44:23)\n at ErrorBoundary (http://localhost:5173/src/components/ErrorBoundary.tsx:11:5)\n at PublicRoute (http://localhost:5173/src/router/PublicRoute.tsx:23:31)\n at RenderedRoute (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4107:5)\n at Routes (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4577:5)\n at AppRouter\n at AudioProvider (http://localhost:5173/src/context/audio-context/AudioContext.tsx:30:3)\n at ToastProvider (http://localhost:5173/src/components/feedback/ToastProvider.tsx:67:3)\n at ErrorBoundary (http://localhost:5173/src/components/ui/ErrorBoundary.tsx:10:5)\n at App (http://localhost:5173/src/app/App.tsx:39:17)\n at Router (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4520:15)\n at BrowserRouter (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:5266:5)\n at ThemeProvider (http://localhost:5173/src/components/theme/ThemeProvider.tsx:26:3)\n at QueryClientProvider (http://localhost:5173/node_modules/.vite/deps/@tanstack_react-query.js?v=8b912487:3089:3)\n\nReact will try to recreate this component tree from scratch using the error boundary you provided, LazyErrorBoundary.\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[name=\"email\"], input#email with value: e2e@test.com\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - The above error occurred in one of your React components:\n\n at Lazy\n at Suspense\n at LazyErrorBoundary (http://localhost:5173/src/components/ui/lazy-component/LazyErrorBoundary.tsx:10:5)\n at WrappedLazyComponent (http://localhost:5173/src/components/ui/lazy-component/createLazyComponent.tsx:44:23)\n at ErrorBoundary (http://localhost:5173/src/components/ErrorBoundary.tsx:11:5)\n at PublicRoute (http://localhost:5173/src/router/PublicRoute.tsx:23:31)\n at RenderedRoute (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4107:5)\n at Routes (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4577:5)\n at AppRouter\n at AudioProvider (http://localhost:5173/src/context/audio-context/AudioContext.tsx:30:3)\n at ToastProvider (http://localhost:5173/src/components/feedback/ToastProvider.tsx:67:3)\n at ErrorBoundary (http://localhost:5173/src/components/ui/ErrorBoundary.tsx:10:5)\n at App (http://localhost:5173/src/app/App.tsx:39:17)\n at Router (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4520:15)\n at BrowserRouter (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:5266:5)\n at ThemeProvider (http://localhost:5173/src/components/theme/ThemeProvider.tsx:26:3)\n at QueryClientProvider (http://localhost:5173/node_modules/.vite/deps/@tanstack_react-query.js?v=8b912487:3089:3)\n\nReact will try to recreate this component tree from scratch using the error boundary you provided, LazyErrorBoundary.\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (4):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
}
|
|
],
|
|
"stderr": [],
|
|
"retry": 1,
|
|
"startTime": "2026-02-14T13:30:30.598Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-3c58b-stering-with-existing-email-chromium-retry1/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-3c58b-stering-with-existing-email-chromium-retry1/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-3c58b-stering-with-existing-email-chromium-retry1/error-context.md"
|
|
},
|
|
{
|
|
"name": "trace",
|
|
"contentType": "application/zip",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-3c58b-stering-with-existing-email-chromium-retry1/trace.zip"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
}
|
|
},
|
|
{
|
|
"workerIndex": 11,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 12072,
|
|
"error": {
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n",
|
|
"stack": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n\n at fillField (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:1043:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:283:11",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
},
|
|
"snippet": " at ../utils/test-helpers.ts:1043\n\n 1041 |\n 1042 | const field = page.locator(selector).first();\n> 1043 | await expect(field).toBeVisible({ timeout: 10000 });\n | ^\n 1044 | await field.fill(value);\n 1045 |\n 1046 | console.log(`✅ [FILL] Field ${selector} filled successfully`);"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
},
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n\n\n at ../utils/test-helpers.ts:1043\n\n 1041 |\n 1042 | const field = page.locator(selector).first();\n> 1043 | await expect(field).toBeVisible({ timeout: 10000 });\n | ^\n 1044 | await field.fill(value);\n 1045 |\n 1046 | console.log(`✅ [FILL] Field ${selector} filled successfully`);\n at fillField (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:1043:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:283:11"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Registration with existing email\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] The above error occurred in one of your React components:\n\n at Lazy\n at Suspense\n at LazyErrorBoundary (http://localhost:5173/src/components/ui/lazy-component/LazyErrorBoundary.tsx:10:5)\n at WrappedLazyComponent (http://localhost:5173/src/components/ui/lazy-component/createLazyComponent.tsx:44:23)\n at ErrorBoundary (http://localhost:5173/src/components/ErrorBoundary.tsx:11:5)\n at PublicRoute (http://localhost:5173/src/router/PublicRoute.tsx:23:31)\n at RenderedRoute (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4107:5)\n at Routes (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4577:5)\n at AppRouter\n at AudioProvider (http://localhost:5173/src/context/audio-context/AudioContext.tsx:30:3)\n at ToastProvider (http://localhost:5173/src/components/feedback/ToastProvider.tsx:67:3)\n at ErrorBoundary (http://localhost:5173/src/components/ui/ErrorBoundary.tsx:10:5)\n at App (http://localhost:5173/src/app/App.tsx:39:17)\n at Router (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4520:15)\n at BrowserRouter (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:5266:5)\n at ThemeProvider (http://localhost:5173/src/components/theme/ThemeProvider.tsx:26:3)\n at QueryClientProvider (http://localhost:5173/node_modules/.vite/deps/@tanstack_react-query.js?v=8b912487:3089:3)\n\nReact will try to recreate this component tree from scratch using the error boundary you provided, LazyErrorBoundary.\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[name=\"email\"], input#email with value: e2e@test.com\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - The above error occurred in one of your React components:\n\n at Lazy\n at Suspense\n at LazyErrorBoundary (http://localhost:5173/src/components/ui/lazy-component/LazyErrorBoundary.tsx:10:5)\n at WrappedLazyComponent (http://localhost:5173/src/components/ui/lazy-component/createLazyComponent.tsx:44:23)\n at ErrorBoundary (http://localhost:5173/src/components/ErrorBoundary.tsx:11:5)\n at PublicRoute (http://localhost:5173/src/router/PublicRoute.tsx:23:31)\n at RenderedRoute (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4107:5)\n at Routes (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4577:5)\n at AppRouter\n at AudioProvider (http://localhost:5173/src/context/audio-context/AudioContext.tsx:30:3)\n at ToastProvider (http://localhost:5173/src/components/feedback/ToastProvider.tsx:67:3)\n at ErrorBoundary (http://localhost:5173/src/components/ui/ErrorBoundary.tsx:10:5)\n at App (http://localhost:5173/src/app/App.tsx:39:17)\n at Router (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4520:15)\n at BrowserRouter (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:5266:5)\n at ThemeProvider (http://localhost:5173/src/components/theme/ThemeProvider.tsx:26:3)\n at QueryClientProvider (http://localhost:5173/node_modules/.vite/deps/@tanstack_react-query.js?v=8b912487:3089:3)\n\nReact will try to recreate this component tree from scratch using the error boundary you provided, LazyErrorBoundary.\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (4):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
}
|
|
],
|
|
"stderr": [],
|
|
"retry": 2,
|
|
"startTime": "2026-02-14T13:30:44.669Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-3c58b-stering-with-existing-email-chromium-retry2/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-3c58b-stering-with-existing-email-chromium-retry2/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-3c58b-stering-with-existing-email-chromium-retry2/error-context.md"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
}
|
|
}
|
|
],
|
|
"status": "unexpected"
|
|
}
|
|
],
|
|
"id": "d748ac400d08b85935ef-53d5184b470bb63aefc3",
|
|
"file": "auth.spec.ts",
|
|
"line": 268,
|
|
"column": 3
|
|
},
|
|
{
|
|
"title": "should logout successfully",
|
|
"ok": false,
|
|
"tags": [],
|
|
"tests": [
|
|
{
|
|
"timeout": 60000,
|
|
"annotations": [],
|
|
"expectedStatus": "passed",
|
|
"projectId": "chromium",
|
|
"projectName": "chromium",
|
|
"results": [
|
|
{
|
|
"workerIndex": 12,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 25920,
|
|
"error": {
|
|
"message": "TimeoutError: page.waitForURL: Timeout 20000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================",
|
|
"stack": "TimeoutError: page.waitForURL: Timeout 20000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================\n at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:393:34)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:334:5",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 34,
|
|
"line": 393
|
|
},
|
|
"snippet": " at ../utils/test-helpers.ts:393\n\n 391 |\n 392 | // Attendre la navigation après login\n> 393 | const navigationPromise = page.waitForURL(\n | ^\n 394 | (url) => url.pathname === '/dashboard' || url.pathname === '/',\n 395 | { timeout: 20000 }\n 396 | );"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 34,
|
|
"line": 393
|
|
},
|
|
"message": "TimeoutError: page.waitForURL: Timeout 20000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================\n\n at ../utils/test-helpers.ts:393\n\n 391 |\n 392 | // Attendre la navigation après login\n> 393 | const navigationPromise = page.waitForURL(\n | ^\n 394 | (url) => url.pathname === '/dashboard' || url.pathname === '/',\n 395 | { timeout: 20000 }\n 396 | );\n at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:393:34)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:334:5"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Logout\n"
|
|
},
|
|
{
|
|
"text": "🔐 [LOGIN] Attempting authentication as e2e@test.com...\n"
|
|
},
|
|
{
|
|
"text": "⏳ [LOGIN] Waiting 500ms before login (1771075858254ms since last login)...\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "✏️ [LOGIN] User not authenticated, proceeding with login form...\n"
|
|
},
|
|
{
|
|
"text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
|
|
},
|
|
{
|
|
"text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
|
|
},
|
|
{
|
|
"text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
|
|
},
|
|
{
|
|
"text": "🚀 [FORM SUBMIT] Submitting form...\n"
|
|
},
|
|
{
|
|
"text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
}
|
|
],
|
|
"stderr": [
|
|
{
|
|
"text": "⚠️ [LOGIN] Form not visible and not on dashboard. Proceeding (might fail)...\n"
|
|
}
|
|
],
|
|
"retry": 0,
|
|
"startTime": "2026-02-14T13:30:58.063Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-should-logout-successfully-chromium/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-should-logout-successfully-chromium/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-should-logout-successfully-chromium/error-context.md"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 34,
|
|
"line": 393
|
|
}
|
|
},
|
|
{
|
|
"workerIndex": 13,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 26680,
|
|
"error": {
|
|
"message": "TimeoutError: page.waitForURL: Timeout 20000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================",
|
|
"stack": "TimeoutError: page.waitForURL: Timeout 20000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================\n at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:393:34)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:334:5",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 34,
|
|
"line": 393
|
|
},
|
|
"snippet": " at ../utils/test-helpers.ts:393\n\n 391 |\n 392 | // Attendre la navigation après login\n> 393 | const navigationPromise = page.waitForURL(\n | ^\n 394 | (url) => url.pathname === '/dashboard' || url.pathname === '/',\n 395 | { timeout: 20000 }\n 396 | );"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 34,
|
|
"line": 393
|
|
},
|
|
"message": "TimeoutError: page.waitForURL: Timeout 20000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================\n\n at ../utils/test-helpers.ts:393\n\n 391 |\n 392 | // Attendre la navigation après login\n> 393 | const navigationPromise = page.waitForURL(\n | ^\n 394 | (url) => url.pathname === '/dashboard' || url.pathname === '/',\n 395 | { timeout: 20000 }\n 396 | );\n at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:393:34)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:334:5"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Logout\n"
|
|
},
|
|
{
|
|
"text": "🔐 [LOGIN] Attempting authentication as e2e@test.com...\n"
|
|
},
|
|
{
|
|
"text": "⏳ [LOGIN] Waiting 500ms before login (1771075885704ms since last login)...\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "✏️ [LOGIN] User not authenticated, proceeding with login form...\n"
|
|
},
|
|
{
|
|
"text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
|
|
},
|
|
{
|
|
"text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
|
|
},
|
|
{
|
|
"text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
|
|
},
|
|
{
|
|
"text": "🚀 [FORM SUBMIT] Submitting form...\n"
|
|
},
|
|
{
|
|
"text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
}
|
|
],
|
|
"stderr": [
|
|
{
|
|
"text": "⚠️ [LOGIN] Form not visible and not on dashboard. Proceeding (might fail)...\n"
|
|
}
|
|
],
|
|
"retry": 1,
|
|
"startTime": "2026-02-14T13:31:25.495Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-should-logout-successfully-chromium-retry1/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-should-logout-successfully-chromium-retry1/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-should-logout-successfully-chromium-retry1/error-context.md"
|
|
},
|
|
{
|
|
"name": "trace",
|
|
"contentType": "application/zip",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-should-logout-successfully-chromium-retry1/trace.zip"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 34,
|
|
"line": 393
|
|
}
|
|
},
|
|
{
|
|
"workerIndex": 14,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 25876,
|
|
"error": {
|
|
"message": "TimeoutError: page.waitForURL: Timeout 20000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================",
|
|
"stack": "TimeoutError: page.waitForURL: Timeout 20000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================\n at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:393:34)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:334:5",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 34,
|
|
"line": 393
|
|
},
|
|
"snippet": " at ../utils/test-helpers.ts:393\n\n 391 |\n 392 | // Attendre la navigation après login\n> 393 | const navigationPromise = page.waitForURL(\n | ^\n 394 | (url) => url.pathname === '/dashboard' || url.pathname === '/',\n 395 | { timeout: 20000 }\n 396 | );"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 34,
|
|
"line": 393
|
|
},
|
|
"message": "TimeoutError: page.waitForURL: Timeout 20000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================\n\n at ../utils/test-helpers.ts:393\n\n 391 |\n 392 | // Attendre la navigation après login\n> 393 | const navigationPromise = page.waitForURL(\n | ^\n 394 | (url) => url.pathname === '/dashboard' || url.pathname === '/',\n 395 | { timeout: 20000 }\n 396 | );\n at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:393:34)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:334:5"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Logout\n"
|
|
},
|
|
{
|
|
"text": "🔐 [LOGIN] Attempting authentication as e2e@test.com...\n"
|
|
},
|
|
{
|
|
"text": "⏳ [LOGIN] Waiting 500ms before login (1771075913916ms since last login)...\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "✏️ [LOGIN] User not authenticated, proceeding with login form...\n"
|
|
},
|
|
{
|
|
"text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
|
|
},
|
|
{
|
|
"text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
|
|
},
|
|
{
|
|
"text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
|
|
},
|
|
{
|
|
"text": "🚀 [FORM SUBMIT] Submitting form...\n"
|
|
},
|
|
{
|
|
"text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
}
|
|
],
|
|
"stderr": [
|
|
{
|
|
"text": "⚠️ [LOGIN] Form not visible and not on dashboard. Proceeding (might fail)...\n"
|
|
}
|
|
],
|
|
"retry": 2,
|
|
"startTime": "2026-02-14T13:31:53.782Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-should-logout-successfully-chromium-retry2/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-should-logout-successfully-chromium-retry2/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-should-logout-successfully-chromium-retry2/error-context.md"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 34,
|
|
"line": 393
|
|
}
|
|
}
|
|
],
|
|
"status": "unexpected"
|
|
}
|
|
],
|
|
"id": "d748ac400d08b85935ef-c0ce6ccc7b7e02794edb",
|
|
"file": "auth.spec.ts",
|
|
"line": 330,
|
|
"column": 3
|
|
},
|
|
{
|
|
"title": "should redirect to login when accessing protected route without auth",
|
|
"ok": true,
|
|
"tags": [],
|
|
"tests": [
|
|
{
|
|
"timeout": 60000,
|
|
"annotations": [],
|
|
"expectedStatus": "passed",
|
|
"projectId": "chromium",
|
|
"projectName": "chromium",
|
|
"results": [
|
|
{
|
|
"workerIndex": 15,
|
|
"parallelIndex": 0,
|
|
"status": "passed",
|
|
"duration": 2072,
|
|
"errors": [],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Route guard test\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "✅ [AUTH TEST] Route guard working correctly\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (4):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (4):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
}
|
|
],
|
|
"stderr": [
|
|
{
|
|
"text": "⚠️ [AUTH TEST] Test passed but had console errors\n"
|
|
}
|
|
],
|
|
"retry": 0,
|
|
"startTime": "2026-02-14T13:32:20.750Z",
|
|
"annotations": [],
|
|
"attachments": []
|
|
}
|
|
],
|
|
"status": "expected"
|
|
}
|
|
],
|
|
"id": "d748ac400d08b85935ef-4d2eb13aa042aa0b2d41",
|
|
"file": "auth.spec.ts",
|
|
"line": 410,
|
|
"column": 3
|
|
},
|
|
{
|
|
"title": "should persist authentication after page refresh",
|
|
"ok": false,
|
|
"tags": [],
|
|
"tests": [
|
|
{
|
|
"timeout": 60000,
|
|
"annotations": [],
|
|
"expectedStatus": "passed",
|
|
"projectId": "chromium",
|
|
"projectName": "chromium",
|
|
"results": [
|
|
{
|
|
"workerIndex": 15,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 35707,
|
|
"error": {
|
|
"message": "TimeoutError: page.waitForURL: Timeout 20000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================",
|
|
"stack": "TimeoutError: page.waitForURL: Timeout 20000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================\n at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:393:34)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:440:5",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 34,
|
|
"line": 393
|
|
},
|
|
"snippet": " at ../utils/test-helpers.ts:393\n\n 391 |\n 392 | // Attendre la navigation après login\n> 393 | const navigationPromise = page.waitForURL(\n | ^\n 394 | (url) => url.pathname === '/dashboard' || url.pathname === '/',\n 395 | { timeout: 20000 }\n 396 | );"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 34,
|
|
"line": 393
|
|
},
|
|
"message": "TimeoutError: page.waitForURL: Timeout 20000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================\n\n at ../utils/test-helpers.ts:393\n\n 391 |\n 392 | // Attendre la navigation après login\n> 393 | const navigationPromise = page.waitForURL(\n | ^\n 394 | (url) => url.pathname === '/dashboard' || url.pathname === '/',\n 395 | { timeout: 20000 }\n 396 | );\n at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:393:34)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:440:5"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Auth persistence test\n"
|
|
},
|
|
{
|
|
"text": "🔐 [LOGIN] Attempting authentication as e2e@test.com...\n"
|
|
},
|
|
{
|
|
"text": "⏳ [LOGIN] Waiting 500ms before login (1771075952961ms since last login)...\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "✏️ [LOGIN] User not authenticated, proceeding with login form...\n"
|
|
},
|
|
{
|
|
"text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
|
|
},
|
|
{
|
|
"text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
|
|
},
|
|
{
|
|
"text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
|
|
},
|
|
{
|
|
"text": "🚀 [FORM SUBMIT] Submitting form...\n"
|
|
},
|
|
{
|
|
"text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
}
|
|
],
|
|
"stderr": [
|
|
{
|
|
"text": "⚠️ [LOGIN] Form not visible and not on dashboard. Proceeding (might fail)...\n"
|
|
}
|
|
],
|
|
"retry": 0,
|
|
"startTime": "2026-02-14T13:32:22.911Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-12d3c-tication-after-page-refresh-chromium/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-12d3c-tication-after-page-refresh-chromium/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-12d3c-tication-after-page-refresh-chromium/error-context.md"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 34,
|
|
"line": 393
|
|
}
|
|
},
|
|
{
|
|
"workerIndex": 16,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 36470,
|
|
"error": {
|
|
"message": "TimeoutError: page.waitForURL: Timeout 20000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================",
|
|
"stack": "TimeoutError: page.waitForURL: Timeout 20000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================\n at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:393:34)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:440:5",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 34,
|
|
"line": 393
|
|
},
|
|
"snippet": " at ../utils/test-helpers.ts:393\n\n 391 |\n 392 | // Attendre la navigation après login\n> 393 | const navigationPromise = page.waitForURL(\n | ^\n 394 | (url) => url.pathname === '/dashboard' || url.pathname === '/',\n 395 | { timeout: 20000 }\n 396 | );"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 34,
|
|
"line": 393
|
|
},
|
|
"message": "TimeoutError: page.waitForURL: Timeout 20000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================\n\n at ../utils/test-helpers.ts:393\n\n 391 |\n 392 | // Attendre la navigation après login\n> 393 | const navigationPromise = page.waitForURL(\n | ^\n 394 | (url) => url.pathname === '/dashboard' || url.pathname === '/',\n 395 | { timeout: 20000 }\n 396 | );\n at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:393:34)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:440:5"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Auth persistence test\n"
|
|
},
|
|
{
|
|
"text": "🔐 [LOGIN] Attempting authentication as e2e@test.com...\n"
|
|
},
|
|
{
|
|
"text": "⏳ [LOGIN] Waiting 500ms before login (1771075989903ms since last login)...\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "✏️ [LOGIN] User not authenticated, proceeding with login form...\n"
|
|
},
|
|
{
|
|
"text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
|
|
},
|
|
{
|
|
"text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
|
|
},
|
|
{
|
|
"text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
|
|
},
|
|
{
|
|
"text": "🚀 [FORM SUBMIT] Submitting form...\n"
|
|
},
|
|
{
|
|
"text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
}
|
|
],
|
|
"stderr": [
|
|
{
|
|
"text": "⚠️ [LOGIN] Form not visible and not on dashboard. Proceeding (might fail)...\n"
|
|
}
|
|
],
|
|
"retry": 1,
|
|
"startTime": "2026-02-14T13:32:59.751Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-12d3c-tication-after-page-refresh-chromium-retry1/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-12d3c-tication-after-page-refresh-chromium-retry1/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-12d3c-tication-after-page-refresh-chromium-retry1/error-context.md"
|
|
},
|
|
{
|
|
"name": "trace",
|
|
"contentType": "application/zip",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-12d3c-tication-after-page-refresh-chromium-retry1/trace.zip"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 34,
|
|
"line": 393
|
|
}
|
|
},
|
|
{
|
|
"workerIndex": 17,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 35882,
|
|
"error": {
|
|
"message": "TimeoutError: page.waitForURL: Timeout 20000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================",
|
|
"stack": "TimeoutError: page.waitForURL: Timeout 20000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================\n at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:393:34)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:440:5",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 34,
|
|
"line": 393
|
|
},
|
|
"snippet": " at ../utils/test-helpers.ts:393\n\n 391 |\n 392 | // Attendre la navigation après login\n> 393 | const navigationPromise = page.waitForURL(\n | ^\n 394 | (url) => url.pathname === '/dashboard' || url.pathname === '/',\n 395 | { timeout: 20000 }\n 396 | );"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 34,
|
|
"line": 393
|
|
},
|
|
"message": "TimeoutError: page.waitForURL: Timeout 20000ms exceeded.\n=========================== logs ===========================\nwaiting for navigation until \"load\"\n============================================================\n\n at ../utils/test-helpers.ts:393\n\n 391 |\n 392 | // Attendre la navigation après login\n> 393 | const navigationPromise = page.waitForURL(\n | ^\n 394 | (url) => url.pathname === '/dashboard' || url.pathname === '/',\n 395 | { timeout: 20000 }\n 396 | );\n at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:393:34)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:440:5"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Auth persistence test\n"
|
|
},
|
|
{
|
|
"text": "🔐 [LOGIN] Attempting authentication as e2e@test.com...\n"
|
|
},
|
|
{
|
|
"text": "⏳ [LOGIN] Waiting 500ms before login (1771076027812ms since last login)...\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "✏️ [LOGIN] User not authenticated, proceeding with login form...\n"
|
|
},
|
|
{
|
|
"text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
|
|
},
|
|
{
|
|
"text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
|
|
},
|
|
{
|
|
"text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
|
|
},
|
|
{
|
|
"text": "🚀 [FORM SUBMIT] Submitting form...\n"
|
|
},
|
|
{
|
|
"text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - POST http://localhost:5173/api/v1/auth/login: 500\n"
|
|
}
|
|
],
|
|
"stderr": [
|
|
{
|
|
"text": "⚠️ [LOGIN] Form not visible and not on dashboard. Proceeding (might fail)...\n"
|
|
}
|
|
],
|
|
"retry": 2,
|
|
"startTime": "2026-02-14T13:33:37.665Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-12d3c-tication-after-page-refresh-chromium-retry2/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-12d3c-tication-after-page-refresh-chromium-retry2/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-12d3c-tication-after-page-refresh-chromium-retry2/error-context.md"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 34,
|
|
"line": 393
|
|
}
|
|
}
|
|
],
|
|
"status": "unexpected"
|
|
}
|
|
],
|
|
"id": "d748ac400d08b85935ef-fb094c064cf6c63bcced",
|
|
"file": "auth.spec.ts",
|
|
"line": 432,
|
|
"column": 3
|
|
},
|
|
{
|
|
"title": "should validate login form fields",
|
|
"ok": true,
|
|
"tags": [],
|
|
"tests": [
|
|
{
|
|
"timeout": 60000,
|
|
"annotations": [],
|
|
"expectedStatus": "passed",
|
|
"projectId": "chromium",
|
|
"projectName": "chromium",
|
|
"results": [
|
|
{
|
|
"workerIndex": 18,
|
|
"parallelIndex": 0,
|
|
"status": "passed",
|
|
"duration": 4058,
|
|
"errors": [],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Login form validation\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "✅ [AUTH TEST] Form validation prevented submission (stayed on login page)\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (4):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (4):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
}
|
|
],
|
|
"stderr": [
|
|
{
|
|
"text": "⚠️ [AUTH TEST] Test passed but had console errors\n"
|
|
}
|
|
],
|
|
"retry": 0,
|
|
"startTime": "2026-02-14T13:34:14.808Z",
|
|
"annotations": [],
|
|
"attachments": []
|
|
}
|
|
],
|
|
"status": "expected"
|
|
}
|
|
],
|
|
"id": "d748ac400d08b85935ef-73ae53ed4fd70aaa00c2",
|
|
"file": "auth.spec.ts",
|
|
"line": 489,
|
|
"column": 3
|
|
},
|
|
{
|
|
"title": "should show error when passwords do not match during registration",
|
|
"ok": false,
|
|
"tags": [],
|
|
"tests": [
|
|
{
|
|
"timeout": 60000,
|
|
"annotations": [],
|
|
"expectedStatus": "passed",
|
|
"projectId": "chromium",
|
|
"projectName": "chromium",
|
|
"results": [
|
|
{
|
|
"workerIndex": 18,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 11850,
|
|
"error": {
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n",
|
|
"stack": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n\n at fillField (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:1043:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:556:11",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
},
|
|
"snippet": " at ../utils/test-helpers.ts:1043\n\n 1041 |\n 1042 | const field = page.locator(selector).first();\n> 1043 | await expect(field).toBeVisible({ timeout: 10000 });\n | ^\n 1044 | await field.fill(value);\n 1045 |\n 1046 | console.log(`✅ [FILL] Field ${selector} filled successfully`);"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
},
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n\n\n at ../utils/test-helpers.ts:1043\n\n 1041 |\n 1042 | const field = page.locator(selector).first();\n> 1043 | await expect(field).toBeVisible({ timeout: 10000 });\n | ^\n 1044 | await field.fill(value);\n 1045 |\n 1046 | console.log(`✅ [FILL] Field ${selector} filled successfully`);\n at fillField (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:1043:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:556:11"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Password mismatch validation\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] The above error occurred in one of your React components:\n\n at Lazy\n at Suspense\n at LazyErrorBoundary (http://localhost:5173/src/components/ui/lazy-component/LazyErrorBoundary.tsx:10:5)\n at WrappedLazyComponent (http://localhost:5173/src/components/ui/lazy-component/createLazyComponent.tsx:44:23)\n at ErrorBoundary (http://localhost:5173/src/components/ErrorBoundary.tsx:11:5)\n at PublicRoute (http://localhost:5173/src/router/PublicRoute.tsx:23:31)\n at RenderedRoute (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4107:5)\n at Routes (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4577:5)\n at AppRouter\n at AudioProvider (http://localhost:5173/src/context/audio-context/AudioContext.tsx:30:3)\n at ToastProvider (http://localhost:5173/src/components/feedback/ToastProvider.tsx:67:3)\n at ErrorBoundary (http://localhost:5173/src/components/ui/ErrorBoundary.tsx:10:5)\n at App (http://localhost:5173/src/app/App.tsx:39:17)\n at Router (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4520:15)\n at BrowserRouter (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:5266:5)\n at ThemeProvider (http://localhost:5173/src/components/theme/ThemeProvider.tsx:26:3)\n at QueryClientProvider (http://localhost:5173/node_modules/.vite/deps/@tanstack_react-query.js?v=8b912487:3089:3)\n\nReact will try to recreate this component tree from scratch using the error boundary you provided, LazyErrorBoundary.\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[name=\"email\"], input#email with value: newuser@example.com\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - The above error occurred in one of your React components:\n\n at Lazy\n at Suspense\n at LazyErrorBoundary (http://localhost:5173/src/components/ui/lazy-component/LazyErrorBoundary.tsx:10:5)\n at WrappedLazyComponent (http://localhost:5173/src/components/ui/lazy-component/createLazyComponent.tsx:44:23)\n at ErrorBoundary (http://localhost:5173/src/components/ErrorBoundary.tsx:11:5)\n at PublicRoute (http://localhost:5173/src/router/PublicRoute.tsx:23:31)\n at RenderedRoute (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4107:5)\n at Routes (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4577:5)\n at AppRouter\n at AudioProvider (http://localhost:5173/src/context/audio-context/AudioContext.tsx:30:3)\n at ToastProvider (http://localhost:5173/src/components/feedback/ToastProvider.tsx:67:3)\n at ErrorBoundary (http://localhost:5173/src/components/ui/ErrorBoundary.tsx:10:5)\n at App (http://localhost:5173/src/app/App.tsx:39:17)\n at Router (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4520:15)\n at BrowserRouter (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:5266:5)\n at ThemeProvider (http://localhost:5173/src/components/theme/ThemeProvider.tsx:26:3)\n at QueryClientProvider (http://localhost:5173/node_modules/.vite/deps/@tanstack_react-query.js?v=8b912487:3089:3)\n\nReact will try to recreate this component tree from scratch using the error boundary you provided, LazyErrorBoundary.\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (4):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
}
|
|
],
|
|
"stderr": [],
|
|
"retry": 0,
|
|
"startTime": "2026-02-14T13:34:18.980Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-216c1-t-match-during-registration-chromium/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-216c1-t-match-during-registration-chromium/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-216c1-t-match-during-registration-chromium/error-context.md"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
}
|
|
},
|
|
{
|
|
"workerIndex": 19,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 12164,
|
|
"error": {
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n",
|
|
"stack": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n\n at fillField (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:1043:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:556:11",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
},
|
|
"snippet": " at ../utils/test-helpers.ts:1043\n\n 1041 |\n 1042 | const field = page.locator(selector).first();\n> 1043 | await expect(field).toBeVisible({ timeout: 10000 });\n | ^\n 1044 | await field.fill(value);\n 1045 |\n 1046 | console.log(`✅ [FILL] Field ${selector} filled successfully`);"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
},
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n\n\n at ../utils/test-helpers.ts:1043\n\n 1041 |\n 1042 | const field = page.locator(selector).first();\n> 1043 | await expect(field).toBeVisible({ timeout: 10000 });\n | ^\n 1044 | await field.fill(value);\n 1045 |\n 1046 | console.log(`✅ [FILL] Field ${selector} filled successfully`);\n at fillField (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:1043:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:556:11"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Password mismatch validation\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] The above error occurred in one of your React components:\n\n at Lazy\n at Suspense\n at LazyErrorBoundary (http://localhost:5173/src/components/ui/lazy-component/LazyErrorBoundary.tsx:10:5)\n at WrappedLazyComponent (http://localhost:5173/src/components/ui/lazy-component/createLazyComponent.tsx:44:23)\n at ErrorBoundary (http://localhost:5173/src/components/ErrorBoundary.tsx:11:5)\n at PublicRoute (http://localhost:5173/src/router/PublicRoute.tsx:23:31)\n at RenderedRoute (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4107:5)\n at Routes (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4577:5)\n at AppRouter\n at AudioProvider (http://localhost:5173/src/context/audio-context/AudioContext.tsx:30:3)\n at ToastProvider (http://localhost:5173/src/components/feedback/ToastProvider.tsx:67:3)\n at ErrorBoundary (http://localhost:5173/src/components/ui/ErrorBoundary.tsx:10:5)\n at App (http://localhost:5173/src/app/App.tsx:39:17)\n at Router (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4520:15)\n at BrowserRouter (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:5266:5)\n at ThemeProvider (http://localhost:5173/src/components/theme/ThemeProvider.tsx:26:3)\n at QueryClientProvider (http://localhost:5173/node_modules/.vite/deps/@tanstack_react-query.js?v=8b912487:3089:3)\n\nReact will try to recreate this component tree from scratch using the error boundary you provided, LazyErrorBoundary.\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[name=\"email\"], input#email with value: newuser@example.com\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - The above error occurred in one of your React components:\n\n at Lazy\n at Suspense\n at LazyErrorBoundary (http://localhost:5173/src/components/ui/lazy-component/LazyErrorBoundary.tsx:10:5)\n at WrappedLazyComponent (http://localhost:5173/src/components/ui/lazy-component/createLazyComponent.tsx:44:23)\n at ErrorBoundary (http://localhost:5173/src/components/ErrorBoundary.tsx:11:5)\n at PublicRoute (http://localhost:5173/src/router/PublicRoute.tsx:23:31)\n at RenderedRoute (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4107:5)\n at Routes (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4577:5)\n at AppRouter\n at AudioProvider (http://localhost:5173/src/context/audio-context/AudioContext.tsx:30:3)\n at ToastProvider (http://localhost:5173/src/components/feedback/ToastProvider.tsx:67:3)\n at ErrorBoundary (http://localhost:5173/src/components/ui/ErrorBoundary.tsx:10:5)\n at App (http://localhost:5173/src/app/App.tsx:39:17)\n at Router (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4520:15)\n at BrowserRouter (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:5266:5)\n at ThemeProvider (http://localhost:5173/src/components/theme/ThemeProvider.tsx:26:3)\n at QueryClientProvider (http://localhost:5173/node_modules/.vite/deps/@tanstack_react-query.js?v=8b912487:3089:3)\n\nReact will try to recreate this component tree from scratch using the error boundary you provided, LazyErrorBoundary.\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (4):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
}
|
|
],
|
|
"stderr": [],
|
|
"retry": 1,
|
|
"startTime": "2026-02-14T13:34:31.897Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-216c1-t-match-during-registration-chromium-retry1/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-216c1-t-match-during-registration-chromium-retry1/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-216c1-t-match-during-registration-chromium-retry1/error-context.md"
|
|
},
|
|
{
|
|
"name": "trace",
|
|
"contentType": "application/zip",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-216c1-t-match-during-registration-chromium-retry1/trace.zip"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
}
|
|
},
|
|
{
|
|
"workerIndex": 20,
|
|
"parallelIndex": 0,
|
|
"status": "failed",
|
|
"duration": 11906,
|
|
"error": {
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n",
|
|
"stack": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n\n at fillField (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:1043:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:556:11",
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
},
|
|
"snippet": " at ../utils/test-helpers.ts:1043\n\n 1041 |\n 1042 | const field = page.locator(selector).first();\n> 1043 | await expect(field).toBeVisible({ timeout: 10000 });\n | ^\n 1044 | await field.fill(value);\n 1045 |\n 1046 | console.log(`✅ [FILL] Field ${selector} filled successfully`);"
|
|
},
|
|
"errors": [
|
|
{
|
|
"location": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
},
|
|
"message": "Error: \u001b[2mexpect(\u001b[22m\u001b[31mlocator\u001b[39m\u001b[2m).\u001b[22mtoBeVisible\u001b[2m(\u001b[22m\u001b[2m)\u001b[22m failed\n\nLocator: locator('input[name=\"email\"], input#email').first()\nExpected: visible\nTimeout: 10000ms\nError: element(s) not found\n\nCall log:\n\u001b[2m - Expect \"toBeVisible\" with timeout 10000ms\u001b[22m\n\u001b[2m - waiting for locator('input[name=\"email\"], input#email').first()\u001b[22m\n\n\n at ../utils/test-helpers.ts:1043\n\n 1041 |\n 1042 | const field = page.locator(selector).first();\n> 1043 | await expect(field).toBeVisible({ timeout: 10000 });\n | ^\n 1044 | await field.fill(value);\n 1045 |\n 1046 | console.log(`✅ [FILL] Field ${selector} filled successfully`);\n at fillField (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:1043:23)\n at /home/senke/git/talas/veza/apps/web/e2e/tests/auth.spec.ts:556:11"
|
|
}
|
|
],
|
|
"stdout": [
|
|
{
|
|
"text": "🧪 [AUTH TEST] Running: Password mismatch validation\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [NETWORK ERROR] GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": "🔴 [CONSOLE ERROR] The above error occurred in one of your React components:\n\n at Lazy\n at Suspense\n at LazyErrorBoundary (http://localhost:5173/src/components/ui/lazy-component/LazyErrorBoundary.tsx:10:5)\n at WrappedLazyComponent (http://localhost:5173/src/components/ui/lazy-component/createLazyComponent.tsx:44:23)\n at ErrorBoundary (http://localhost:5173/src/components/ErrorBoundary.tsx:11:5)\n at PublicRoute (http://localhost:5173/src/router/PublicRoute.tsx:23:31)\n at RenderedRoute (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4107:5)\n at Routes (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4577:5)\n at AppRouter\n at AudioProvider (http://localhost:5173/src/context/audio-context/AudioContext.tsx:30:3)\n at ToastProvider (http://localhost:5173/src/components/feedback/ToastProvider.tsx:67:3)\n at ErrorBoundary (http://localhost:5173/src/components/ui/ErrorBoundary.tsx:10:5)\n at App (http://localhost:5173/src/app/App.tsx:39:17)\n at Router (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4520:15)\n at BrowserRouter (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:5266:5)\n at ThemeProvider (http://localhost:5173/src/components/theme/ThemeProvider.tsx:26:3)\n at QueryClientProvider (http://localhost:5173/node_modules/.vite/deps/@tanstack_react-query.js?v=8b912487:3089:3)\n\nReact will try to recreate this component tree from scratch using the error boundary you provided, LazyErrorBoundary.\n"
|
|
},
|
|
{
|
|
"text": "✏️ [FILL] Filling field input[name=\"email\"], input#email with value: newuser@example.com\n"
|
|
},
|
|
{
|
|
"text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Console errors (5):\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - Failed to load resource: the server responded with a status of 500 (Internal Server Error)\n"
|
|
},
|
|
{
|
|
"text": " - The above error occurred in one of your React components:\n\n at Lazy\n at Suspense\n at LazyErrorBoundary (http://localhost:5173/src/components/ui/lazy-component/LazyErrorBoundary.tsx:10:5)\n at WrappedLazyComponent (http://localhost:5173/src/components/ui/lazy-component/createLazyComponent.tsx:44:23)\n at ErrorBoundary (http://localhost:5173/src/components/ErrorBoundary.tsx:11:5)\n at PublicRoute (http://localhost:5173/src/router/PublicRoute.tsx:23:31)\n at RenderedRoute (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4107:5)\n at Routes (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4577:5)\n at AppRouter\n at AudioProvider (http://localhost:5173/src/context/audio-context/AudioContext.tsx:30:3)\n at ToastProvider (http://localhost:5173/src/components/feedback/ToastProvider.tsx:67:3)\n at ErrorBoundary (http://localhost:5173/src/components/ui/ErrorBoundary.tsx:10:5)\n at App (http://localhost:5173/src/app/App.tsx:39:17)\n at Router (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:4520:15)\n at BrowserRouter (http://localhost:5173/node_modules/.vite/deps/react-router-dom.js?v=8b912487:5266:5)\n at ThemeProvider (http://localhost:5173/src/components/theme/ThemeProvider.tsx:26:3)\n at QueryClientProvider (http://localhost:5173/node_modules/.vite/deps/@tanstack_react-query.js?v=8b912487:3089:3)\n\nReact will try to recreate this component tree from scratch using the error boundary you provided, LazyErrorBoundary.\n"
|
|
},
|
|
{
|
|
"text": "🔴 [AUTH TEST] Network errors (4):\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
},
|
|
{
|
|
"text": " - GET http://localhost:5173/api/v1/auth/me: 500\n"
|
|
}
|
|
],
|
|
"stderr": [],
|
|
"retry": 2,
|
|
"startTime": "2026-02-14T13:34:45.521Z",
|
|
"annotations": [],
|
|
"attachments": [
|
|
{
|
|
"name": "screenshot",
|
|
"contentType": "image/png",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-216c1-t-match-during-registration-chromium-retry2/test-failed-1.png"
|
|
},
|
|
{
|
|
"name": "video",
|
|
"contentType": "video/webm",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-216c1-t-match-during-registration-chromium-retry2/video.webm"
|
|
},
|
|
{
|
|
"name": "error-context",
|
|
"contentType": "text/markdown",
|
|
"path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-216c1-t-match-during-registration-chromium-retry2/error-context.md"
|
|
}
|
|
],
|
|
"errorLocation": {
|
|
"file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
|
|
"column": 23,
|
|
"line": 1043
|
|
}
|
|
}
|
|
],
|
|
"status": "unexpected"
|
|
}
|
|
],
|
|
"id": "d748ac400d08b85935ef-184539997e56a19b11c0",
|
|
"file": "auth.spec.ts",
|
|
"line": 546,
|
|
"column": 3
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"errors": [],
|
|
"stats": {
|
|
"startTime": "2026-02-14T13:27:50.608Z",
|
|
"duration": 426982.95,
|
|
"expected": 2,
|
|
"skipped": 1,
|
|
"unexpected": 7,
|
|
"flaky": 0
|
|
}
|
|
} |