| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,44 +1,33 @@ | ||
| module.exports = { | ||
| parserOptions: { | ||
| ecmaVersion: 2022, | ||
| }, | ||
| env: { | ||
| node: true, | ||
| }, | ||
| extends: ['eslint:recommended', 'plugin:vue/vue3-strongly-recommended'], | ||
| rules: { | ||
| quotes: ['error', 'single', { allowTemplateLiterals: true }], | ||
| semi: ['error', 'always'], | ||
| 'vue/html-closing-bracket-newline': [ | ||
| 'error', | ||
| { | ||
| multiline: 'never', | ||
| singleline: 'never', | ||
| }, | ||
| ], | ||
| 'vue/max-attributes-per-line': [ | ||
| 'error', | ||
| { | ||
| multiline: { | ||
| max: 4, | ||
| }, | ||
| singleline: { | ||
| max: 4, | ||
| }, | ||
| }, | ||
| ], | ||
| 'vue/static-class-names-order': 'error', | ||
| indent: ['error', 2], | ||
| }, | ||
| }; |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,3 @@ | ||
| import defaultPlaywrightConfig from '../../util/default-playwright-config'; | ||
|
|
||
| export default defaultPlaywrightConfig; |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,11 @@ | ||
| import { test, expect } from 'playwright/test'; | ||
|
|
||
| test('Vue app renders successfully', async ({ page }) => { | ||
| await page.goto(' http://localhost:5173/'); | ||
|
|
||
| const appElement = await page.$('#app'); | ||
| expect(appElement).toBeTruthy(); | ||
|
|
||
| const title = await page.textContent('h2'); | ||
| expect(title).toContain('Todo List'); | ||
| }); |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,49 @@ | ||
| const { devices } = require('playwright/test'); | ||
|
|
||
| module.exports = { | ||
| timeout: 20000, | ||
| use: { | ||
| browserName: 'chromium', | ||
| headless: true, | ||
| viewport: { width: 1280, height: 720 }, | ||
| }, | ||
| reporter: [['html'], ['dot']], | ||
| testDir: './', | ||
| testMatch: '**/*.spec.js', | ||
| projects: [ | ||
| { | ||
| name: 'chromium', | ||
| use: { ...devices['Desktop Chrome'] }, | ||
| }, | ||
| { | ||
| name: 'firefox', | ||
| use: { ...devices['Desktop Firefox'] }, | ||
| }, | ||
| { | ||
| name: 'webkit', | ||
| use: { ...devices['Desktop Safari'] }, | ||
| }, | ||
| { | ||
| name: 'Mobile Chrome', | ||
| use: { ...devices['Pixel 5'] }, | ||
| }, | ||
| { | ||
| name: 'Mobile Safari', | ||
| use: { ...devices['iPhone 12'] }, | ||
| }, | ||
| { | ||
| name: 'Microsoft Edge', | ||
| use: { | ||
| ...devices['Desktop Edge'], | ||
| channel: 'msedge', | ||
| }, | ||
| }, | ||
| { | ||
| name: 'Google Chrome', | ||
| use: { | ||
| ...devices['Desktop Chrome'], | ||
| channel: 'chrome', | ||
| }, | ||
| }, | ||
| ], | ||
| }; |