mirror of
https://github.com/formbricks/formbricks.git
synced 2025-12-24 07:00:34 -06:00
Compare commits
2 Commits
version-fi
...
ReviewBot/
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
096947a93a | ||
|
|
e563b3330a |
27
.github/workflows/playwright.yml
vendored
Normal file
27
.github/workflows/playwright.yml
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
name: Playwright Tests
|
||||
on:
|
||||
push:
|
||||
branches: [ main, master ]
|
||||
pull_request:
|
||||
branches: [ main, master ]
|
||||
jobs:
|
||||
test:
|
||||
timeout-minutes: 60
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 18
|
||||
- name: Install dependencies
|
||||
run: npm install -g pnpm && pnpm install
|
||||
- name: Install Playwright Browsers
|
||||
run: pnpm exec playwright install --with-deps
|
||||
- name: Run Playwright tests
|
||||
run: pnpm exec playwright test
|
||||
- uses: actions/upload-artifact@v3
|
||||
if: always()
|
||||
with:
|
||||
name: playwright-report
|
||||
path: playwright-report/
|
||||
retention-days: 30
|
||||
6
.gitignore
vendored
6
.gitignore
vendored
@@ -44,4 +44,8 @@ packages/database/zod
|
||||
# nixos stuff
|
||||
.direnv
|
||||
|
||||
Zone.Identifier
|
||||
Zone.Identifier
|
||||
/test-results/
|
||||
/playwright-report/
|
||||
/blob-report/
|
||||
/playwright/.cache/
|
||||
|
||||
@@ -30,6 +30,8 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"@changesets/cli": "^2.26.2",
|
||||
"@playwright/test": "^1.40.1",
|
||||
"@types/node": "20.10.1",
|
||||
"eslint-config-formbricks": "workspace:*",
|
||||
"husky": "^8.0.3",
|
||||
"lint-staged": "^15.1.0",
|
||||
@@ -58,5 +60,8 @@
|
||||
"budgetPercentIncreaseRed": 20,
|
||||
"minimumChangeThreshold": 0,
|
||||
"showDetails": true
|
||||
},
|
||||
"dependencies": {
|
||||
"playwright": "^1.40.1"
|
||||
}
|
||||
}
|
||||
|
||||
77
playwright.config.ts
Normal file
77
playwright.config.ts
Normal file
@@ -0,0 +1,77 @@
|
||||
import { defineConfig, devices } from "@playwright/test";
|
||||
|
||||
/**
|
||||
* Read environment variables from file.
|
||||
* https://github.com/motdotla/dotenv
|
||||
*/
|
||||
// require('dotenv').config();
|
||||
|
||||
/**
|
||||
* See https://playwright.dev/docs/test-configuration.
|
||||
*/
|
||||
export default defineConfig({
|
||||
testDir: "./tests",
|
||||
/* Run tests in files in parallel */
|
||||
fullyParallel: true,
|
||||
/* Fail the build on CI if you accidentally left test.only in the source code. */
|
||||
forbidOnly: !!process.env.CI,
|
||||
/* Retry on CI only */
|
||||
retries: process.env.CI ? 2 : 0,
|
||||
/* Opt out of parallel tests on CI. */
|
||||
workers: process.env.CI ? 1 : undefined,
|
||||
/* Reporter to use. See https://playwright.dev/docs/test-reporters */
|
||||
reporter: "html",
|
||||
/* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */
|
||||
use: {
|
||||
/* Base URL to use in actions like `await page.goto('/')`. */
|
||||
// baseURL: 'http://127.0.0.1:3000',
|
||||
|
||||
/* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */
|
||||
trace: "on-first-retry",
|
||||
},
|
||||
|
||||
/* Configure projects for major browsers */
|
||||
projects: [
|
||||
{
|
||||
name: "chromium",
|
||||
use: { ...devices["Desktop Chrome"] },
|
||||
},
|
||||
|
||||
// {
|
||||
// name: "firefox",
|
||||
// use: { ...devices["Desktop Firefox"] },
|
||||
// },
|
||||
|
||||
// {
|
||||
// name: "webkit",
|
||||
// use: { ...devices["Desktop Safari"] },
|
||||
// },
|
||||
|
||||
/* Test against mobile viewports. */
|
||||
// {
|
||||
// name: 'Mobile Chrome',
|
||||
// use: { ...devices['Pixel 5'] },
|
||||
// },
|
||||
// {
|
||||
// name: 'Mobile Safari',
|
||||
// use: { ...devices['iPhone 12'] },
|
||||
// },
|
||||
|
||||
/* Test against branded browsers. */
|
||||
// {
|
||||
// name: 'Microsoft Edge',
|
||||
// use: { ...devices['Desktop Edge'], channel: 'msedge' },
|
||||
// },
|
||||
// {
|
||||
// name: 'Google Chrome',
|
||||
// use: { ...devices['Desktop Chrome'], channel: 'chrome' },
|
||||
// },
|
||||
],
|
||||
|
||||
/* Run your local dev server before starting the tests */
|
||||
webServer: {
|
||||
command: "pnpm go",
|
||||
url: "http://127.0.0.1:3000",
|
||||
reuseExistingServer: !process.env.CI,
|
||||
},
|
||||
});
|
||||
147
pnpm-lock.yaml
generated
147
pnpm-lock.yaml
generated
@@ -7,10 +7,20 @@ settings:
|
||||
importers:
|
||||
|
||||
.:
|
||||
dependencies:
|
||||
playwright:
|
||||
specifier: ^1.40.1
|
||||
version: 1.40.1
|
||||
devDependencies:
|
||||
'@changesets/cli':
|
||||
specifier: ^2.26.2
|
||||
version: 2.26.2
|
||||
'@playwright/test':
|
||||
specifier: ^1.40.1
|
||||
version: 1.40.1
|
||||
'@types/node':
|
||||
specifier: 20.10.1
|
||||
version: 20.10.1
|
||||
eslint-config-formbricks:
|
||||
specifier: workspace:*
|
||||
version: link:packages/eslint-config-formbricks
|
||||
@@ -277,7 +287,7 @@ importers:
|
||||
version: 7.2.0(typescript@5.3.2)
|
||||
vite:
|
||||
specifier: ^4.4.11
|
||||
version: 4.5.0
|
||||
version: 4.5.0(@types/node@20.10.1)
|
||||
|
||||
apps/web:
|
||||
dependencies:
|
||||
@@ -443,16 +453,16 @@ importers:
|
||||
version: 9.0.0(eslint@8.54.0)
|
||||
eslint-config-turbo:
|
||||
specifier: latest
|
||||
version: 1.8.8(eslint@8.54.0)
|
||||
version: 1.10.16(eslint@8.54.0)
|
||||
terser:
|
||||
specifier: ^5.24.0
|
||||
version: 5.24.0
|
||||
vite:
|
||||
specifier: ^5.0.4
|
||||
version: 5.0.4(terser@5.24.0)
|
||||
version: 5.0.4(@types/node@20.10.1)(terser@5.24.0)
|
||||
vite-plugin-dts:
|
||||
specifier: ^3.6.4
|
||||
version: 3.6.4(typescript@5.3.2)(vite@5.0.4)
|
||||
version: 3.6.4(@types/node@20.10.1)(typescript@5.3.2)(vite@5.0.4)
|
||||
|
||||
packages/database:
|
||||
dependencies:
|
||||
@@ -526,7 +536,7 @@ importers:
|
||||
version: 9.0.0(eslint@8.54.0)
|
||||
eslint-config-turbo:
|
||||
specifier: latest
|
||||
version: 1.8.8(eslint@8.54.0)
|
||||
version: 1.10.16(eslint@8.54.0)
|
||||
eslint-plugin-react:
|
||||
specifier: 7.33.2
|
||||
version: 7.33.2(eslint@8.54.0)
|
||||
@@ -586,13 +596,13 @@ importers:
|
||||
version: 9.0.0(eslint@8.54.0)
|
||||
eslint-config-turbo:
|
||||
specifier: latest
|
||||
version: 1.8.8(eslint@8.54.0)
|
||||
version: 1.10.16(eslint@8.54.0)
|
||||
isomorphic-fetch:
|
||||
specifier: ^3.0.0
|
||||
version: 3.0.0
|
||||
jest:
|
||||
specifier: ^29.7.0
|
||||
version: 29.7.0
|
||||
version: 29.7.0(@types/node@20.10.1)
|
||||
jest-environment-jsdom:
|
||||
specifier: ^29.7.0
|
||||
version: 29.7.0
|
||||
@@ -604,10 +614,10 @@ importers:
|
||||
version: 5.24.0
|
||||
vite:
|
||||
specifier: ^5.0.4
|
||||
version: 5.0.4(terser@5.24.0)
|
||||
version: 5.0.4(@types/node@20.10.1)(terser@5.24.0)
|
||||
vite-plugin-dts:
|
||||
specifier: ^3.6.4
|
||||
version: 3.6.4(typescript@5.3.2)(vite@5.0.4)
|
||||
version: 3.6.4(@types/node@20.10.1)(typescript@5.3.2)(vite@5.0.4)
|
||||
|
||||
packages/lib:
|
||||
dependencies:
|
||||
@@ -713,7 +723,7 @@ importers:
|
||||
version: 9.0.0(eslint@8.54.0)
|
||||
eslint-config-turbo:
|
||||
specifier: latest
|
||||
version: 1.8.8(eslint@8.54.0)
|
||||
version: 1.10.16(eslint@8.54.0)
|
||||
postcss:
|
||||
specifier: ^8.4.31
|
||||
version: 8.4.31
|
||||
@@ -728,10 +738,10 @@ importers:
|
||||
version: 5.24.0
|
||||
vite:
|
||||
specifier: ^5.0.4
|
||||
version: 5.0.4(terser@5.24.0)
|
||||
version: 5.0.4(@types/node@20.10.1)(terser@5.24.0)
|
||||
vite-plugin-dts:
|
||||
specifier: ^3.6.4
|
||||
version: 3.6.4(typescript@5.3.2)(vite@5.0.4)
|
||||
version: 3.6.4(@types/node@20.10.1)(typescript@5.3.2)(vite@5.0.4)
|
||||
vite-tsconfig-paths:
|
||||
specifier: ^4.2.1
|
||||
version: 4.2.1(typescript@5.3.2)(vite@5.0.4)
|
||||
@@ -4294,7 +4304,7 @@ packages:
|
||||
magic-string: 0.27.0
|
||||
react-docgen-typescript: 2.2.2(typescript@5.3.2)
|
||||
typescript: 5.3.2
|
||||
vite: 4.5.0
|
||||
vite: 4.5.0(@types/node@20.10.1)
|
||||
dev: true
|
||||
|
||||
/@jridgewell/gen-mapping@0.3.3:
|
||||
@@ -4668,24 +4678,24 @@ packages:
|
||||
'@types/react': 18.2.28
|
||||
react: 18.2.0
|
||||
|
||||
/@microsoft/api-extractor-model@7.28.2:
|
||||
/@microsoft/api-extractor-model@7.28.2(@types/node@20.10.1):
|
||||
resolution: {integrity: sha512-vkojrM2fo3q4n4oPh4uUZdjJ2DxQ2+RnDQL/xhTWSRUNPF6P4QyrvY357HBxbnltKcYu+nNNolVqc6TIGQ73Ig==}
|
||||
dependencies:
|
||||
'@microsoft/tsdoc': 0.14.2
|
||||
'@microsoft/tsdoc-config': 0.16.2
|
||||
'@rushstack/node-core-library': 3.61.0
|
||||
'@rushstack/node-core-library': 3.61.0(@types/node@20.10.1)
|
||||
transitivePeerDependencies:
|
||||
- '@types/node'
|
||||
dev: true
|
||||
|
||||
/@microsoft/api-extractor@7.38.0:
|
||||
/@microsoft/api-extractor@7.38.0(@types/node@20.10.1):
|
||||
resolution: {integrity: sha512-e1LhZYnfw+JEebuY2bzhw0imDCl1nwjSThTrQqBXl40hrVo6xm3j/1EpUr89QyzgjqmAwek2ZkIVZbrhaR+cqg==}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
'@microsoft/api-extractor-model': 7.28.2
|
||||
'@microsoft/api-extractor-model': 7.28.2(@types/node@20.10.1)
|
||||
'@microsoft/tsdoc': 0.14.2
|
||||
'@microsoft/tsdoc-config': 0.16.2
|
||||
'@rushstack/node-core-library': 3.61.0
|
||||
'@rushstack/node-core-library': 3.61.0(@types/node@20.10.1)
|
||||
'@rushstack/rig-package': 0.5.1
|
||||
'@rushstack/ts-command-line': 4.16.1
|
||||
colors: 1.2.5
|
||||
@@ -5239,6 +5249,14 @@ packages:
|
||||
requiresBuild: true
|
||||
optional: true
|
||||
|
||||
/@playwright/test@1.40.1:
|
||||
resolution: {integrity: sha512-EaaawMTOeEItCRvfmkI9v6rBkF1svM8wjl/YPRrg2N2Wmp+4qJYkWtJsbew1szfKKDm6fPLy4YAanBhIlf9dWw==}
|
||||
engines: {node: '>=16'}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
playwright: 1.40.1
|
||||
dev: true
|
||||
|
||||
/@preact/preset-vite@2.7.0(@babel/core@7.23.5)(preact@10.19.2)(vite@5.0.4):
|
||||
resolution: {integrity: sha512-m5N0FVtxbCCDxNk55NGhsRpKJChYcupcuQHzMJc/Bll07IKZKn8amwYciyKFS9haU6AgzDAJ/ewvApr6Qg1DHw==}
|
||||
peerDependencies:
|
||||
@@ -5254,7 +5272,7 @@ packages:
|
||||
debug: 4.3.4
|
||||
kolorist: 1.8.0
|
||||
resolve: 1.22.8
|
||||
vite: 5.0.4(terser@5.24.0)
|
||||
vite: 5.0.4(@types/node@20.10.1)(terser@5.24.0)
|
||||
transitivePeerDependencies:
|
||||
- preact
|
||||
- supports-color
|
||||
@@ -5288,7 +5306,7 @@ packages:
|
||||
'@prefresh/utils': 1.2.0
|
||||
'@rollup/pluginutils': 4.2.1
|
||||
preact: 10.19.2
|
||||
vite: 5.0.4(terser@5.24.0)
|
||||
vite: 5.0.4(@types/node@20.10.1)(terser@5.24.0)
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: true
|
||||
@@ -7030,7 +7048,7 @@ packages:
|
||||
resolution: {integrity: sha512-6i/8UoL0P5y4leBIGzvkZdS85RDMG9y1ihZzmTZQ5LdHUYmZ7pKFoj8X0236s3lusPs1Fa5HTQUpwI+UfTcmeA==}
|
||||
dev: true
|
||||
|
||||
/@rushstack/node-core-library@3.61.0:
|
||||
/@rushstack/node-core-library@3.61.0(@types/node@20.10.1):
|
||||
resolution: {integrity: sha512-tdOjdErme+/YOu4gPed3sFS72GhtWCgNV9oDsHDnoLY5oDfwjKUc9Z+JOZZ37uAxcm/OCahDHfuu2ugqrfWAVQ==}
|
||||
peerDependencies:
|
||||
'@types/node': '*'
|
||||
@@ -7038,6 +7056,7 @@ packages:
|
||||
'@types/node':
|
||||
optional: true
|
||||
dependencies:
|
||||
'@types/node': 20.10.1
|
||||
colors: 1.2.5
|
||||
fs-extra: 7.0.1
|
||||
import-lazy: 4.0.0
|
||||
@@ -8150,7 +8169,7 @@ packages:
|
||||
magic-string: 0.30.5
|
||||
rollup: 3.29.4
|
||||
typescript: 5.3.2
|
||||
vite: 4.5.0
|
||||
vite: 4.5.0(@types/node@20.10.1)
|
||||
transitivePeerDependencies:
|
||||
- encoding
|
||||
- supports-color
|
||||
@@ -8515,7 +8534,7 @@ packages:
|
||||
react: 18.2.0
|
||||
react-docgen: 6.0.4
|
||||
react-dom: 18.2.0(react@18.2.0)
|
||||
vite: 4.5.0
|
||||
vite: 4.5.0(@types/node@20.10.1)
|
||||
transitivePeerDependencies:
|
||||
- '@preact/preset-vite'
|
||||
- encoding
|
||||
@@ -8968,7 +8987,7 @@ packages:
|
||||
/@types/jsonwebtoken@9.0.5:
|
||||
resolution: {integrity: sha512-VRLSGzik+Unrup6BsouBeHsf4d1hOEgYWTm/7Nmw1sXoN1+tRly/Gy/po3yeahnP4jfnQWWAhQAqcNfH7ngOkA==}
|
||||
dependencies:
|
||||
'@types/node': 20.9.0
|
||||
'@types/node': 20.10.1
|
||||
dev: true
|
||||
|
||||
/@types/keyv@3.1.4:
|
||||
@@ -9052,18 +9071,6 @@ packages:
|
||||
dependencies:
|
||||
undici-types: 5.26.5
|
||||
|
||||
/@types/node@20.8.6:
|
||||
resolution: {integrity: sha512-eWO4K2Ji70QzKUqRy6oyJWUeB7+g2cRagT3T/nxYibYcT4y2BDL8lqolRXjTHmkZCdJfIPaY73KbJAZmcryxTQ==}
|
||||
dependencies:
|
||||
undici-types: 5.25.3
|
||||
dev: true
|
||||
|
||||
/@types/node@20.9.0:
|
||||
resolution: {integrity: sha512-nekiGu2NDb1BcVofVcEKMIwzlx4NjHlcjhoxxKBNLtz15Y1z7MYf549DFvkHSId02Ax6kGwWntIBPC3l/JZcmw==}
|
||||
dependencies:
|
||||
undici-types: 5.26.5
|
||||
dev: true
|
||||
|
||||
/@types/normalize-package-data@2.4.3:
|
||||
resolution: {integrity: sha512-ehPtgRgaULsFG8x0NeYJvmyH1hmlfsNLujHe9dQEia/7MAJYdzMSi19JtchUHjmBA6XC/75dK55mzZH+RyieSg==}
|
||||
|
||||
@@ -9080,7 +9087,7 @@ packages:
|
||||
/@types/qrcode@1.5.5:
|
||||
resolution: {integrity: sha512-CdfBi/e3Qk+3Z/fXYShipBT13OJ2fDO2Q2w5CIP5anLTLIndQG9z6P1cnm+8zCWSpm5dnxMFd/uREtb0EXuQzg==}
|
||||
dependencies:
|
||||
'@types/node': 20.8.6
|
||||
'@types/node': 20.10.1
|
||||
dev: true
|
||||
|
||||
/@types/qs@6.9.9:
|
||||
@@ -9647,7 +9654,7 @@ packages:
|
||||
'@babel/plugin-transform-react-jsx-source': 7.22.5(@babel/core@7.23.5)
|
||||
magic-string: 0.27.0
|
||||
react-refresh: 0.14.0
|
||||
vite: 4.5.0
|
||||
vite: 4.5.0(@types/node@20.10.1)
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: true
|
||||
@@ -9663,7 +9670,7 @@ packages:
|
||||
'@babel/plugin-transform-react-jsx-source': 7.22.5(@babel/core@7.23.2)
|
||||
'@types/babel__core': 7.20.3
|
||||
react-refresh: 0.14.0
|
||||
vite: 4.5.0
|
||||
vite: 4.5.0(@types/node@20.10.1)
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: true
|
||||
@@ -11417,7 +11424,7 @@ packages:
|
||||
capture-stack-trace: 1.0.2
|
||||
dev: false
|
||||
|
||||
/create-jest@29.7.0:
|
||||
/create-jest@29.7.0(@types/node@20.10.1):
|
||||
resolution: {integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==}
|
||||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||
hasBin: true
|
||||
@@ -12385,13 +12392,13 @@ packages:
|
||||
eslint: 8.54.0
|
||||
dev: true
|
||||
|
||||
/eslint-config-turbo@1.8.8(eslint@8.54.0):
|
||||
resolution: {integrity: sha512-+yT22sHOT5iC1sbBXfLIdXfbZuiv9bAyOXsxTxFCWelTeFFnANqmuKB3x274CFvf7WRuZ/vYP/VMjzU9xnFnxA==}
|
||||
/eslint-config-turbo@1.10.16(eslint@8.54.0):
|
||||
resolution: {integrity: sha512-O3NQI72bQHV7FvSC6lWj66EGx8drJJjuT1kuInn6nbMLOHdMBhSUX/8uhTAlHRQdlxZk2j9HtgFCIzSc93w42g==}
|
||||
peerDependencies:
|
||||
eslint: '>6.6.0'
|
||||
dependencies:
|
||||
eslint: 8.54.0
|
||||
eslint-plugin-turbo: 1.8.8(eslint@8.54.0)
|
||||
eslint-plugin-turbo: 1.10.16(eslint@8.54.0)
|
||||
dev: true
|
||||
|
||||
/eslint-import-resolver-node@0.3.9:
|
||||
@@ -12575,11 +12582,12 @@ packages:
|
||||
- typescript
|
||||
dev: true
|
||||
|
||||
/eslint-plugin-turbo@1.8.8(eslint@8.54.0):
|
||||
resolution: {integrity: sha512-zqyTIvveOY4YU5jviDWw9GXHd4RiKmfEgwsjBrV/a965w0PpDwJgEUoSMB/C/dU310Sv9mF3DSdEjxjJLaw6rA==}
|
||||
/eslint-plugin-turbo@1.10.16(eslint@8.54.0):
|
||||
resolution: {integrity: sha512-ZjrR88MTN64PNGufSEcM0tf+V1xFYVbeiMeuIqr0aiABGomxFLo4DBkQ7WI4WzkZtWQSIA2sP+yxqSboEfL9MQ==}
|
||||
peerDependencies:
|
||||
eslint: '>6.6.0'
|
||||
dependencies:
|
||||
dotenv: 16.0.3
|
||||
eslint: 8.54.0
|
||||
dev: true
|
||||
|
||||
@@ -13234,6 +13242,13 @@ packages:
|
||||
/fs.realpath@1.0.0:
|
||||
resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
|
||||
|
||||
/fsevents@2.3.2:
|
||||
resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
|
||||
engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
|
||||
os: [darwin]
|
||||
requiresBuild: true
|
||||
optional: true
|
||||
|
||||
/fsevents@2.3.3:
|
||||
resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
|
||||
engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
|
||||
@@ -14702,7 +14717,7 @@ packages:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/jest-cli@29.7.0:
|
||||
/jest-cli@29.7.0(@types/node@20.10.1):
|
||||
resolution: {integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==}
|
||||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||
hasBin: true
|
||||
@@ -14716,7 +14731,7 @@ packages:
|
||||
'@jest/test-result': 29.7.0
|
||||
'@jest/types': 29.6.3
|
||||
chalk: 4.1.2
|
||||
create-jest: 29.7.0
|
||||
create-jest: 29.7.0(@types/node@20.10.1)
|
||||
exit: 0.1.2
|
||||
import-local: 3.1.0
|
||||
jest-config: 29.7.0(@types/node@20.10.1)
|
||||
@@ -14811,7 +14826,7 @@ packages:
|
||||
'@jest/fake-timers': 29.7.0
|
||||
'@jest/types': 29.6.3
|
||||
'@types/jsdom': 20.0.1
|
||||
'@types/node': 20.8.6
|
||||
'@types/node': 20.10.1
|
||||
jest-mock: 29.7.0
|
||||
jest-util: 29.7.0
|
||||
jsdom: 20.0.3
|
||||
@@ -15102,7 +15117,7 @@ packages:
|
||||
supports-color: 8.1.1
|
||||
dev: true
|
||||
|
||||
/jest@29.7.0:
|
||||
/jest@29.7.0(@types/node@20.10.1):
|
||||
resolution: {integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==}
|
||||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||
hasBin: true
|
||||
@@ -15115,7 +15130,7 @@ packages:
|
||||
'@jest/core': 29.7.0
|
||||
'@jest/types': 29.6.3
|
||||
import-local: 3.1.0
|
||||
jest-cli: 29.7.0
|
||||
jest-cli: 29.7.0(@types/node@20.10.1)
|
||||
transitivePeerDependencies:
|
||||
- '@types/node'
|
||||
- babel-plugin-macros
|
||||
@@ -17624,6 +17639,20 @@ packages:
|
||||
dependencies:
|
||||
find-up: 5.0.0
|
||||
|
||||
/playwright-core@1.40.1:
|
||||
resolution: {integrity: sha512-+hkOycxPiV534c4HhpfX6yrlawqVUzITRKwHAmYfmsVreltEl6fAZJ3DPfLMOODw0H3s1Itd6MDCWmP1fl/QvQ==}
|
||||
engines: {node: '>=16'}
|
||||
hasBin: true
|
||||
|
||||
/playwright@1.40.1:
|
||||
resolution: {integrity: sha512-2eHI7IioIpQ0bS1Ovg/HszsN/XKNwEG1kbzSDDmADpclKc7CyqkHw7Mg2JCz/bbCxg25QUPcjksoMW7JcIFQmw==}
|
||||
engines: {node: '>=16'}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
playwright-core: 1.40.1
|
||||
optionalDependencies:
|
||||
fsevents: 2.3.2
|
||||
|
||||
/pngjs@5.0.0:
|
||||
resolution: {integrity: sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==}
|
||||
engines: {node: '>=10.13.0'}
|
||||
@@ -20578,10 +20607,6 @@ packages:
|
||||
which-boxed-primitive: 1.0.2
|
||||
dev: true
|
||||
|
||||
/undici-types@5.25.3:
|
||||
resolution: {integrity: sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA==}
|
||||
dev: true
|
||||
|
||||
/undici-types@5.26.5:
|
||||
resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==}
|
||||
|
||||
@@ -21035,7 +21060,7 @@ packages:
|
||||
vfile-message: 3.1.4
|
||||
dev: false
|
||||
|
||||
/vite-plugin-dts@3.6.4(typescript@5.3.2)(vite@5.0.4):
|
||||
/vite-plugin-dts@3.6.4(@types/node@20.10.1)(typescript@5.3.2)(vite@5.0.4):
|
||||
resolution: {integrity: sha512-yOVhUI/kQhtS6lCXRYYLv2UUf9bftcwQK9ROxCX2ul17poLQs02ctWX7+vXB8GPRzH8VCK3jebEFtPqqijXx6w==}
|
||||
engines: {node: ^14.18.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
@@ -21045,13 +21070,13 @@ packages:
|
||||
vite:
|
||||
optional: true
|
||||
dependencies:
|
||||
'@microsoft/api-extractor': 7.38.0
|
||||
'@microsoft/api-extractor': 7.38.0(@types/node@20.10.1)
|
||||
'@rollup/pluginutils': 5.0.5(rollup@2.78.0)
|
||||
'@vue/language-core': 1.8.22(typescript@5.3.2)
|
||||
debug: 4.3.4
|
||||
kolorist: 1.8.0
|
||||
typescript: 5.3.2
|
||||
vite: 5.0.4(terser@5.24.0)
|
||||
vite: 5.0.4(@types/node@20.10.1)(terser@5.24.0)
|
||||
vue-tsc: 1.8.22(typescript@5.3.2)
|
||||
transitivePeerDependencies:
|
||||
- '@types/node'
|
||||
@@ -21070,13 +21095,13 @@ packages:
|
||||
debug: 4.3.4
|
||||
globrex: 0.1.2
|
||||
tsconfck: 2.1.2(typescript@5.3.2)
|
||||
vite: 5.0.4(terser@5.24.0)
|
||||
vite: 5.0.4(@types/node@20.10.1)(terser@5.24.0)
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
- typescript
|
||||
dev: true
|
||||
|
||||
/vite@4.5.0:
|
||||
/vite@4.5.0(@types/node@20.10.1):
|
||||
resolution: {integrity: sha512-ulr8rNLA6rkyFAlVWw2q5YJ91v098AFQ2R0PRFwPzREXOUJQPtFUG0t+/ZikhaOCDqFoDhN6/v8Sq0o4araFAw==}
|
||||
engines: {node: ^14.18.0 || >=16.0.0}
|
||||
hasBin: true
|
||||
@@ -21104,6 +21129,7 @@ packages:
|
||||
terser:
|
||||
optional: true
|
||||
dependencies:
|
||||
'@types/node': 20.10.1
|
||||
esbuild: 0.18.20
|
||||
postcss: 8.4.31
|
||||
rollup: 3.29.4
|
||||
@@ -21111,7 +21137,7 @@ packages:
|
||||
fsevents: 2.3.3
|
||||
dev: true
|
||||
|
||||
/vite@5.0.4(terser@5.24.0):
|
||||
/vite@5.0.4(@types/node@20.10.1)(terser@5.24.0):
|
||||
resolution: {integrity: sha512-RzAr8LSvM8lmhB4tQ5OPcBhpjOZRZjuxv9zO5UcxeoY2bd3kP3Ticd40Qma9/BqZ8JS96Ll/jeBX9u+LJZrhVg==}
|
||||
engines: {node: ^18.0.0 || >=20.0.0}
|
||||
hasBin: true
|
||||
@@ -21139,6 +21165,7 @@ packages:
|
||||
terser:
|
||||
optional: true
|
||||
dependencies:
|
||||
'@types/node': 20.10.1
|
||||
esbuild: 0.19.5
|
||||
postcss: 8.4.31
|
||||
rollup: 4.4.1
|
||||
|
||||
41
tests/initial.spec.ts
Normal file
41
tests/initial.spec.ts
Normal file
@@ -0,0 +1,41 @@
|
||||
import { test, expect } from "@playwright/test";
|
||||
|
||||
const email = "testp@gmail.com";
|
||||
const password = "Test@123";
|
||||
|
||||
async function createUser(page) {
|
||||
await page.goto("http://localhost:3000/auth/signup");
|
||||
await page.getByText("Continue with Email").click();
|
||||
await page.fill('input[name="name"]', "test");
|
||||
await page.press('input[name="name"]', "Tab");
|
||||
await page.fill('input[name="email"]', email);
|
||||
await page.press('input[name="email"]', "Tab");
|
||||
await page.fill('input[name="password"]', password);
|
||||
await page.press('input[name="password"]', "Enter");
|
||||
}
|
||||
|
||||
class LoginPage {
|
||||
async login(page, email, password) {
|
||||
await page.getByText("Login").click();
|
||||
await page.getByText("Login with Email").click();
|
||||
await page.fill('input[name="email"]', email);
|
||||
await page.press('input[name="email"]', "Tab");
|
||||
await page.fill('input[name="password"]', password);
|
||||
await page.press('input[name="password"]', "Enter");
|
||||
}
|
||||
}
|
||||
|
||||
test("create account, login, and complete onboarding", async ({ page }) => {
|
||||
const loginPage = new LoginPage();
|
||||
await createUser(page);
|
||||
await loginPage.login(page, email, password);
|
||||
await completeOnboarding(page);
|
||||
});
|
||||
await expect(page).toHaveTitle(/Your Surveys | Formbricks/);
|
||||
}
|
||||
|
||||
test("create account, login, and complete onboarding", async ({ page }) => {
|
||||
await createUser(page);
|
||||
await loginUser(page);
|
||||
await completeOnboarding(page);
|
||||
});
|
||||
Reference in New Issue
Block a user