Files
ComfyUI_frontend/tsconfig.json
bymyself ae1617874f feat: Add cloud E2E testing infrastructure
Adds Playwright tests for cloud environment with Firebase auth.

Changes:
- Refactor ComfyPage to abstract base class
- Add LocalhostComfyPage (existing devtools implementation)
- Add CloudComfyPage (cloud settings API, Firebase auth)
- Add cloud fixture with auth state persistence
- Add globalSetupCloud for Firebase login
- Add playwright.cloud.config with 5x timeout
- Add basic cloud tests (load app, canvas interaction, settings)
- Update .gitignore for auth state files
- Update tsconfig to include playwright.cloud.config

Architecture:
- ComfyPage abstract with 3 backend-specific methods
- LocalhostComfyPage uses /api/devtools + multi-user
- CloudComfyPage uses /api/settings + Firebase localStorage
- No code duplication (95% shared)

Setup:
- Requires CLOUD_TEST_EMAIL and CLOUD_TEST_PASSWORD env vars
- globalSetup logs in once, saves auth to browser_tests/.auth/
- Tests reuse saved auth state (no login per test)
2025-11-06 16:23:00 -07:00

68 lines
1.5 KiB
JSON

{
"compilerOptions": {
"target": "ES2023",
"useDefineForClassFields": true,
"module": "ESNext",
"lib": [
"ES2023",
"ES2023.Array",
"DOM",
"DOM.Iterable"
],
"skipLibCheck": true,
"incremental": true,
"sourceMap": true,
"esModuleInterop": true,
"moduleResolution": "bundler",
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
"resolveJsonModule": true,
"strict": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"noFallthroughCasesInSwitch": true,
"noImplicitOverride": true,
"allowJs": true,
"verbatimModuleSyntax": true,
"baseUrl": ".",
"paths": {
"@/*": [
"src/*"
],
"@/utils/formatUtil": [
"packages/shared-frontend-utils/src/formatUtil.ts"
],
"@/utils/networkUtil": [
"packages/shared-frontend-utils/src/networkUtil.ts"
],
"@tests-ui/*": [
"tests-ui/*"
]
},
"typeRoots": [
"src/types",
"node_modules/@types",
"./node_modules"
],
"types": [
"vitest/globals"
],
"outDir": "./dist",
"rootDir": "./"
},
"include": [
".storybook/**/*",
"eslint.config.ts",
"global.d.ts",
"knip.config.ts",
"playwright.cloud.config.ts",
"src/**/*.vue",
"src/**/*",
"src/types/**/*.d.ts",
"tailwind.config.ts",
"tests-ui/**/*",
"vite.config.mts",
"vitest.config.ts",
// "vitest.setup.ts",
]
}