alessandro trinca tornidor
commited on
Commit
·
6efe519
1
Parent(s):
a05c9de
test: add playwright e2e test cases
Browse files- static/package.json +19 -0
- static/playwright.config.ts +100 -0
- static/pnpm-lock.yaml +76 -0
- static/template.env +1 -0
- static/tests/test-helper.ts +29 -0
- static/tests/test-word-frequency-1-table0-aria-snapshot.txt +21 -0
- static/tests/test-word-frequency-1-table13-aria-snapshot.txt +13 -0
- static/tests/test-word-frequency-1.spec.ts +53 -0
- static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-1-chromium-linux.png +3 -0
- static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-10-chromium-linux.png +3 -0
- static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-11-chromium-linux.png +3 -0
- static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-2-chromium-linux.png +3 -0
- static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-3-chromium-linux.png +3 -0
- static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-4-chromium-linux.png +3 -0
- static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-5-chromium-linux.png +3 -0
- static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-6-chromium-linux.png +3 -0
- static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-7-chromium-linux.png +3 -0
- static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-8-chromium-linux.png +3 -0
- static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-9-chromium-linux.png +3 -0
- static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-short-text-input-1-chromium-linux.png +3 -0
- static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-short-text-input-1.aria.yml +20 -0
- static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-short-text-input-2-chromium-linux.png +3 -0
- static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-short-text-input-3-chromium-linux.png +3 -0
- static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-short-text-input-4-chromium-linux.png +3 -0
- static/tsconfig.json +10 -0
static/package.json
ADDED
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "static",
|
3 |
+
"version": "1.0.0",
|
4 |
+
"description": "",
|
5 |
+
"main": "index.js",
|
6 |
+
"scripts": {
|
7 |
+
"test": "echo \"Error: no test specified\" && exit 1"
|
8 |
+
},
|
9 |
+
"type": "module",
|
10 |
+
"keywords": [],
|
11 |
+
"author": "",
|
12 |
+
"license": "ISC",
|
13 |
+
"packageManager": "[email protected]",
|
14 |
+
"devDependencies": {
|
15 |
+
"@playwright/test": "^1.52.0",
|
16 |
+
"@types/node": "^22.14.1",
|
17 |
+
"dotenv": "^16.5.0"
|
18 |
+
}
|
19 |
+
}
|
static/playwright.config.ts
ADDED
@@ -0,0 +1,100 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import 'dotenv/config'
|
2 |
+
import { defineConfig, devices } from '@playwright/test';
|
3 |
+
|
4 |
+
/**
|
5 |
+
* Read environment variables from file.
|
6 |
+
* https://github.com/motdotla/dotenv
|
7 |
+
*/
|
8 |
+
// require('dotenv').config();
|
9 |
+
|
10 |
+
/**
|
11 |
+
* See https://playwright.dev/docs/test-configuration.
|
12 |
+
*/
|
13 |
+
export default defineConfig({
|
14 |
+
timeout: 24 * 1000,
|
15 |
+
testDir: './tests',
|
16 |
+
/* Run tests in files in parallel */
|
17 |
+
fullyParallel: true,
|
18 |
+
/* Fail the build on CI if you accidentally left test.only in the source code. */
|
19 |
+
forbidOnly: !!process.env.CI,
|
20 |
+
/* Retry on CI only */
|
21 |
+
retries: process.env.CI ? 2 : 0,
|
22 |
+
/* Opt out of parallel tests on CI. */
|
23 |
+
workers: process.env.CI ? 1 : undefined,
|
24 |
+
/* Reporter to use. See https://playwright.dev/docs/test-reporters */
|
25 |
+
reporter: [ ['html', { open: 'never' }] ],
|
26 |
+
/* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */
|
27 |
+
use: {
|
28 |
+
/* Base URL to use in actions like `await page.goto('/')`. */
|
29 |
+
baseURL: 'http://localhost:3000',
|
30 |
+
browserName: "chromium",
|
31 |
+
viewport: { width: 1600, height: 1200 },
|
32 |
+
ignoreHTTPSErrors: true,
|
33 |
+
permissions: ['microphone'],
|
34 |
+
screenshot: 'only-on-failure',
|
35 |
+
trace: 'on-first-retry',
|
36 |
+
video: 'retain-on-failure',
|
37 |
+
launchOptions: {
|
38 |
+
ignoreDefaultArgs: ['--mute-audio'],
|
39 |
+
args: [
|
40 |
+
"--use-fake-device-for-media-stream",
|
41 |
+
"--use-fake-ui-for-media-stream",
|
42 |
+
],
|
43 |
+
}
|
44 |
+
/* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */
|
45 |
+
},
|
46 |
+
|
47 |
+
/* Configure projects for major browsers */
|
48 |
+
projects: [
|
49 |
+
{
|
50 |
+
name: 'chromium',
|
51 |
+
// grepInvert: /mobile/,
|
52 |
+
use: {
|
53 |
+
...devices['Desktop Chrome'],
|
54 |
+
viewport: { width: 1600, height: 1200 },
|
55 |
+
},
|
56 |
+
},
|
57 |
+
|
58 |
+
{
|
59 |
+
name: 'firefox',
|
60 |
+
// grepInvert: /mobile/,
|
61 |
+
use: { ...devices['Desktop Firefox'] },
|
62 |
+
},
|
63 |
+
|
64 |
+
{
|
65 |
+
name: 'webkit',
|
66 |
+
// grepInvert: /mobile/,
|
67 |
+
use: { ...devices['Desktop Safari'] },
|
68 |
+
},
|
69 |
+
|
70 |
+
// Test against mobile viewports.
|
71 |
+
{
|
72 |
+
name: 'MobileChrome',
|
73 |
+
// grep: /mobile/,
|
74 |
+
use: { ...devices['Pixel 5'] },
|
75 |
+
},
|
76 |
+
{
|
77 |
+
name: 'MobileSafari',
|
78 |
+
// grep: /mobile/,
|
79 |
+
use: { ...devices['iPhone 12'] },
|
80 |
+
},
|
81 |
+
|
82 |
+
/*
|
83 |
+
// Test against branded browsers.
|
84 |
+
{
|
85 |
+
name: 'Microsoft Edge',
|
86 |
+
use: { ...devices['Desktop Edge'], channel: 'msedge' },
|
87 |
+
},
|
88 |
+
{
|
89 |
+
name: 'Google Chrome',
|
90 |
+
use: { ...devices['Desktop Chrome'], channel: 'chrome' },
|
91 |
+
}*/
|
92 |
+
],
|
93 |
+
|
94 |
+
/* Run your local dev server before starting the tests */
|
95 |
+
// webServer: {
|
96 |
+
// command: 'npm run start',
|
97 |
+
// url: 'http://127.0.0.1:3000',
|
98 |
+
// reuseExistingServer: !process.env.CI,
|
99 |
+
// },
|
100 |
+
});
|
static/pnpm-lock.yaml
ADDED
@@ -0,0 +1,76 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
lockfileVersion: '9.0'
|
2 |
+
|
3 |
+
settings:
|
4 |
+
autoInstallPeers: true
|
5 |
+
excludeLinksFromLockfile: false
|
6 |
+
|
7 |
+
importers:
|
8 |
+
|
9 |
+
.:
|
10 |
+
devDependencies:
|
11 |
+
'@playwright/test':
|
12 |
+
specifier: ^1.52.0
|
13 |
+
version: 1.52.0
|
14 |
+
'@types/node':
|
15 |
+
specifier: ^22.14.1
|
16 |
+
version: 22.14.1
|
17 |
+
dotenv:
|
18 |
+
specifier: ^16.5.0
|
19 |
+
version: 16.5.0
|
20 |
+
|
21 |
+
packages:
|
22 |
+
|
23 |
+
'@playwright/[email protected]':
|
24 |
+
resolution: {integrity: sha512-uh6W7sb55hl7D6vsAeA+V2p5JnlAqzhqFyF0VcJkKZXkgnFcVG9PziERRHQfPLfNGx1C292a4JqbWzhR8L4R1g==}
|
25 |
+
engines: {node: '>=18'}
|
26 |
+
hasBin: true
|
27 |
+
|
28 |
+
'@types/[email protected]':
|
29 |
+
resolution: {integrity: sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw==}
|
30 |
+
|
31 | |
32 |
+
resolution: {integrity: sha512-m/C+AwOAr9/W1UOIZUo232ejMNnJAJtYQjUbHoNTBNTJSvqzzDh7vnrei3o3r3m9blf6ZoDkvcw0VmozNRFJxg==}
|
33 |
+
engines: {node: '>=12'}
|
34 |
+
|
35 | |
36 |
+
resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
|
37 |
+
engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
|
38 |
+
os: [darwin]
|
39 |
+
|
40 | |
41 |
+
resolution: {integrity: sha512-l2osTgLXSMeuLZOML9qYODUQoPPnUsKsb5/P6LJ2e6uPKXUdPK5WYhN4z03G+YNbWmGDY4YENauNu4ZKczreHg==}
|
42 |
+
engines: {node: '>=18'}
|
43 |
+
hasBin: true
|
44 |
+
|
45 | |
46 |
+
resolution: {integrity: sha512-JAwMNMBlxJ2oD1kce4KPtMkDeKGHQstdpFPcPH3maElAXon/QZeTvtsfXmTMRyO9TslfoYOXkSsvao2nE1ilTw==}
|
47 |
+
engines: {node: '>=18'}
|
48 |
+
hasBin: true
|
49 |
+
|
50 | |
51 |
+
resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==}
|
52 |
+
|
53 |
+
snapshots:
|
54 |
+
|
55 |
+
'@playwright/[email protected]':
|
56 |
+
dependencies:
|
57 |
+
playwright: 1.52.0
|
58 |
+
|
59 |
+
'@types/[email protected]':
|
60 |
+
dependencies:
|
61 |
+
undici-types: 6.21.0
|
62 |
+
|
63 |
+
[email protected]: {}
|
64 |
+
|
65 | |
66 |
+
optional: true
|
67 |
+
|
68 |
+
[email protected]: {}
|
69 |
+
|
70 | |
71 |
+
dependencies:
|
72 |
+
playwright-core: 1.52.0
|
73 |
+
optionalDependencies:
|
74 |
+
fsevents: 2.3.2
|
75 |
+
|
76 |
+
[email protected]: {}
|
static/template.env
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
DOMAIN=http://localhost:7860
|
static/tests/test-helper.ts
ADDED
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import fs from 'node:fs'
|
2 |
+
import { Page, expect } from '@playwright/test';
|
3 |
+
|
4 |
+
interface CellObject {
|
5 |
+
table: number
|
6 |
+
row: number
|
7 |
+
}
|
8 |
+
|
9 |
+
export const fileReader = async (filePath: string) => {
|
10 |
+
try {
|
11 |
+
const data = fs.readFileSync(filePath, { encoding: 'utf8' });
|
12 |
+
console.log("data length:", data.length, "#");
|
13 |
+
return data
|
14 |
+
} catch (err) {
|
15 |
+
console.error(err);
|
16 |
+
throw err
|
17 |
+
}
|
18 |
+
}
|
19 |
+
|
20 |
+
export const loopOverTablesAndClickOnUrls = async (page: Page, cellObj: CellObject, timeout=50) => {
|
21 |
+
let cellLabel = `id-table-${cellObj["table"]}-row-${cellObj["row"]}-nth`
|
22 |
+
console.log(`current aria-label:${cellLabel}...`)
|
23 |
+
console.log(`current cell content: '${cellLabel}'...`)
|
24 |
+
let currentCellElement = page.getByLabel(cellLabel).locator('a')
|
25 |
+
console.log("currentCellElement:", currentCellElement, "#")
|
26 |
+
await currentCellElement.click();
|
27 |
+
await page.waitForTimeout(timeout)
|
28 |
+
await expect(page.getByLabel('editor')).toHaveScreenshot(/** {stylePath: `${import.meta.dirname}/../index.css`} */);
|
29 |
+
}
|
static/tests/test-word-frequency-1-table0-aria-snapshot.txt
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
|
2 |
+
- table "id-table-0-nth":
|
3 |
+
- caption
|
4 |
+
- rowgroup:
|
5 |
+
- row "word row nth offsets":
|
6 |
+
- cell "word"
|
7 |
+
- cell "row nth"
|
8 |
+
- cell "offsets"
|
9 |
+
- rowgroup:
|
10 |
+
- row "id-table-0-row-0-nth":
|
11 |
+
- cell "there"
|
12 |
+
- cell "0"
|
13 |
+
- cell "3,8"
|
14 |
+
- row "id-table-0-row-1-nth":
|
15 |
+
- cell "There"
|
16 |
+
- cell "0"
|
17 |
+
- cell "23,28"
|
18 |
+
- row "id-table-0-row-2-nth":
|
19 |
+
- cell "there"
|
20 |
+
- cell "0"
|
21 |
+
- cell "107,112"
|
static/tests/test-word-frequency-1-table13-aria-snapshot.txt
ADDED
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
|
2 |
+
- table "id-table-13-nth":
|
3 |
+
- caption
|
4 |
+
- rowgroup:
|
5 |
+
- row "word row nth offsets":
|
6 |
+
- cell "word"
|
7 |
+
- cell "row nth"
|
8 |
+
- cell "offsets"
|
9 |
+
- rowgroup:
|
10 |
+
- row "id-table-13-row-0-nth":
|
11 |
+
- cell "table"
|
12 |
+
- cell "0"
|
13 |
+
- cell "101,106"
|
static/tests/test-word-frequency-1.spec.ts
ADDED
@@ -0,0 +1,53 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import 'dotenv/config'
|
2 |
+
import { test, expect } from '@playwright/test';
|
3 |
+
import { fileReader, loopOverTablesAndClickOnUrls } from './test-helper'
|
4 |
+
|
5 |
+
test(`test: word frequency (short text input)`, async ({ page }) => {
|
6 |
+
const wordFreqTable0AriaSnapshot1FilePath = `${import.meta.dirname}/test-word-frequency-1-table0-aria-snapshot.txt`
|
7 |
+
const wordFreqTable13AriaSnapshot1FilePath = `${import.meta.dirname}/test-word-frequency-1-table13-aria-snapshot.txt`
|
8 |
+
await page.goto(process.env.DOMAIN ?? "http://localhost:7860/");
|
9 |
+
console.log(page.url())
|
10 |
+
|
11 |
+
await page.getByRole('button', { name: 'btn4-getWordFrequency' }).click();
|
12 |
+
let table0 = page.getByRole('table', { name: 'id-table-0-nth' })
|
13 |
+
let dataTable0 = await fileReader(wordFreqTable0AriaSnapshot1FilePath)
|
14 |
+
let table13 = page.getByRole('table', { name: 'id-table-13-nth' })
|
15 |
+
let dataTableLast = await fileReader(wordFreqTable13AriaSnapshot1FilePath)
|
16 |
+
await expect(table0).toMatchAriaSnapshot(dataTable0)
|
17 |
+
await expect(table13).toMatchAriaSnapshot(dataTableLast)
|
18 |
+
|
19 |
+
let cellArray1 = [{ table: 0, row: 0 }, { table: 0, row: 1 }, { table: 5, row: 0 }, { table: 13, row: 0 }]
|
20 |
+
for (let idx in cellArray1) {
|
21 |
+
await loopOverTablesAndClickOnUrls(page, cellArray1[idx], 0)
|
22 |
+
}
|
23 |
+
console.log("end!")
|
24 |
+
});
|
25 |
+
|
26 |
+
test(`test: word frequency (long, multi line text input)`, async ({ page }) => {
|
27 |
+
const testLLMTextFilePath = `${import.meta.dirname}/../../tests/events/llm_generated_story_1.txt`
|
28 |
+
await page.goto(process.env.DOMAIN ?? "http://localhost:7860/");
|
29 |
+
console.log(page.url())
|
30 |
+
|
31 |
+
console.log("Let's try with a much longer, multiline text while scrolling the conteditable div on click")
|
32 |
+
console.log("first upload a new, longer, multiline text then populate again the words frequency tables and re-try again the word links")
|
33 |
+
|
34 |
+
const fileChooserPromise = page.waitForEvent('filechooser');
|
35 |
+
await page.getByRole('button', { name: 'id-input-file-selector' }).click();
|
36 |
+
await page.waitForTimeout(200)
|
37 |
+
const fileChooser = await fileChooserPromise;
|
38 |
+
await fileChooser.setFiles(testLLMTextFilePath);
|
39 |
+
await page.waitForTimeout(200)
|
40 |
+
|
41 |
+
await page.getByRole('button', { name: 'btn4-getWordFrequency' }).click();
|
42 |
+
|
43 |
+
console.log("try with a new array of tables/rows...")
|
44 |
+
let cellArray2 = [
|
45 |
+
{ table: 1, row: 1 }, { table: 1, row: 2 }, { table: 1, row: 3 }, { table: 2, row: 0 }, { table: 2, row: 1 },
|
46 |
+
{ table: 2, row: 2 }, { table: 0, row: 1 }, { table: 8, row: 1 }, { table: 8, row: 4 }, { table: 737, row: 1 },
|
47 |
+
{ table: 737, row: 3 }
|
48 |
+
]
|
49 |
+
for (let idx in cellArray2) {
|
50 |
+
await loopOverTablesAndClickOnUrls(page, cellArray2[idx], 100)
|
51 |
+
}
|
52 |
+
console.log("end!")
|
53 |
+
});
|
static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-1-chromium-linux.png
ADDED
![]() |
Git LFS Details
|
static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-10-chromium-linux.png
ADDED
![]() |
Git LFS Details
|
static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-11-chromium-linux.png
ADDED
![]() |
Git LFS Details
|
static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-2-chromium-linux.png
ADDED
![]() |
Git LFS Details
|
static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-3-chromium-linux.png
ADDED
![]() |
Git LFS Details
|
static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-4-chromium-linux.png
ADDED
![]() |
Git LFS Details
|
static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-5-chromium-linux.png
ADDED
![]() |
Git LFS Details
|
static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-6-chromium-linux.png
ADDED
![]() |
Git LFS Details
|
static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-7-chromium-linux.png
ADDED
![]() |
Git LFS Details
|
static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-8-chromium-linux.png
ADDED
![]() |
Git LFS Details
|
static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-long-multi-line-text-input-9-chromium-linux.png
ADDED
![]() |
Git LFS Details
|
static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-short-text-input-1-chromium-linux.png
ADDED
![]() |
Git LFS Details
|
static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-short-text-input-1.aria.yml
ADDED
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
- table "id-table-0-nth":
|
2 |
+
- caption
|
3 |
+
- rowgroup:
|
4 |
+
- row "word row nth offsets":
|
5 |
+
- cell "word"
|
6 |
+
- cell "row nth"
|
7 |
+
- cell "offsets"
|
8 |
+
- rowgroup:
|
9 |
+
- row "id-table-0-row-0-nth":
|
10 |
+
- cell "there"
|
11 |
+
- cell "0"
|
12 |
+
- cell /\d+,\d+/
|
13 |
+
- row "id-table-0-row-1-nth":
|
14 |
+
- cell "There"
|
15 |
+
- cell "0"
|
16 |
+
- cell /\d+,\d+/
|
17 |
+
- row "id-table-0-row-2-nth":
|
18 |
+
- cell "there"
|
19 |
+
- cell "0"
|
20 |
+
- cell /\d+,\d+/
|
static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-short-text-input-2-chromium-linux.png
ADDED
![]() |
Git LFS Details
|
static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-short-text-input-3-chromium-linux.png
ADDED
![]() |
Git LFS Details
|
static/tests/test-word-frequency-1.spec.ts-snapshots/test-word-frequency-short-text-input-4-chromium-linux.png
ADDED
![]() |
Git LFS Details
|
static/tsconfig.json
ADDED
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"compilerOptions": {
|
3 |
+
"target": "es2016",
|
4 |
+
"module": "commonjs",
|
5 |
+
"esModuleInterop": true,
|
6 |
+
"forceConsistentCasingInFileNames": true,
|
7 |
+
"strict": true,
|
8 |
+
"skipLibCheck": true
|
9 |
+
}
|
10 |
+
}
|