JSON.parse(JSON.stringify())
の代わりにstructuredClone(toRaw())
を使うようにするESLintルール
#5900
test.yml
on: pull_request
Matrix: e2e-test
commit-snapshots
7s
Annotations
23 errors, 8 warnings, and 6 notices
lint:
src/components/DefaultStyleSelectDialog.vue#L214
'JSON.stringify(JSON.parse(store.state.defaultStyleIds))'ではなく'structuredClone(toRaw(store.state.defaultStyleIds))'を使用してください。
|
lint:
src/store/audio.ts#L60
'JSON.stringify(JSON.parse(audioItem))'ではなく'structuredClone(toRaw(audioItem))'を使用してください。
|
lint:
src/store/audio.ts#L1278
'JSON.stringify(JSON.parse(state.audioItems[audioKey]))'ではなく'structuredClone(toRaw(state.audioItems[audioKey]))'を使用してください。
|
lint:
src/store/audio.ts#L2185
'JSON.stringify(JSON.parse(query.accentPhrases))'ではなく'structuredClone(toRaw(query.accentPhrases))'を使用してください。
|
lint:
src/store/audio.ts#L2247
'JSON.stringify(JSON.parse(query.accentPhrases))'ではなく'structuredClone(toRaw(query.accentPhrases))'を使用してください。
|
lint:
src/store/preset.ts#L171
'JSON.stringify(JSON.parse(presetItems))'ではなく'structuredClone(toRaw(presetItems))'を使用してください。
|
lint:
src/store/preset.ts#L172
'JSON.stringify(JSON.parse(presetKeys))'ではなく'structuredClone(toRaw(presetKeys))'を使用してください。
|
lint:
src/store/utility.ts#L224
'JSON.stringify(JSON.parse(beforeAccent))'ではなく'structuredClone(toRaw(beforeAccent))'を使用してください。
|
lint:
src/store/utility.ts#L225
'JSON.stringify(JSON.parse(afterAccent))'ではなく'structuredClone(toRaw(afterAccent))'を使用してください。
|
lint
Process completed with exit code 1.
|
build-test:
src/components/DefaultStyleSelectDialog.vue#L214
'JSON.stringify(JSON.parse(store.state.defaultStyleIds))'ではなく'structuredClone(toRaw(store.state.defaultStyleIds))'を使用してください。
|
build-test:
src/store/audio.ts#L60
'JSON.stringify(JSON.parse(audioItem))'ではなく'structuredClone(toRaw(audioItem))'を使用してください。
|
build-test:
src/store/audio.ts#L1278
'JSON.stringify(JSON.parse(state.audioItems[audioKey]))'ではなく'structuredClone(toRaw(state.audioItems[audioKey]))'を使用してください。
|
build-test:
src/store/audio.ts#L2185
'JSON.stringify(JSON.parse(query.accentPhrases))'ではなく'structuredClone(toRaw(query.accentPhrases))'を使用してください。
|
build-test:
src/store/audio.ts#L2247
'JSON.stringify(JSON.parse(query.accentPhrases))'ではなく'structuredClone(toRaw(query.accentPhrases))'を使用してください。
|
build-test:
src/store/preset.ts#L171
'JSON.stringify(JSON.parse(presetItems))'ではなく'structuredClone(toRaw(presetItems))'を使用してください。
|
build-test:
src/store/preset.ts#L172
'JSON.stringify(JSON.parse(presetKeys))'ではなく'structuredClone(toRaw(presetKeys))'を使用してください。
|
build-test:
src/store/utility.ts#L224
'JSON.stringify(JSON.parse(beforeAccent))'ではなく'structuredClone(toRaw(beforeAccent))'を使用してください。
|
build-test:
src/store/utility.ts#L225
'JSON.stringify(JSON.parse(afterAccent))'ではなく'structuredClone(toRaw(afterAccent))'を使用してください。
|
build-test
Process completed with exit code 1.
|
[browser] › browser\音声パラメータ.spec.ts:12:5 › 音声パラメータ引き継ぎの設定:
tests\e2e\browser\音声パラメータ.spec.ts#L9
1) [browser] › browser\音声パラメータ.spec.ts:12:5 › 音声パラメータ引き継ぎの設定 ─────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: "1.00"
Received: "0.50"
7 | async function validateValue(locator: Locator, expectedValue: string) {
8 | const value = await locator.evaluate((e: HTMLInputElement) => e.value);
> 9 | expect(value).toBe(expectedValue);
| ^
10 | }
11 |
12 | test("音声パラメータ引き継ぎの設定", async ({ page }) => {
at validateValue (D:\a\voicevox\voicevox\tests\e2e\browser\音声パラメータ.spec.ts:9:17)
at D:\a\voicevox\voicevox\tests\e2e\browser\音声パラメータ.spec.ts:37:3
|
[browser] › browser/アクセント.spec.ts:7:5 › アクセント分割したらアクセント区間が増える:
tests/e2e/browser/アクセント.spec.ts#L13
1) [browser] › browser/アクセント.spec.ts:7:5 › アクセント分割したらアクセント区間が増える ─────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: 1
Received: 0
11 | await page.locator(".audio-cell input").first().press("Enter");
12 | await page.waitForTimeout(500);
> 13 | expect(await page.locator(".mora-table").count()).toBe(1);
| ^
14 | await (await page.locator(".splitter-cell").all())[1].click();
15 | await page.waitForTimeout(500);
16 | expect(await page.locator(".mora-table").count()).toBe(2);
at /Users/runner/work/voicevox/voicevox/tests/e2e/browser/アクセント.spec.ts:13:53
|
[browser] › browser/ツールバーカスタマイズダイアログ.spec.ts:8:5 › ツールバーのカスタマイズでボタンを追加でき、デフォルトに戻すこともできる:
tests/e2e/browser/ツールバーカスタマイズダイアログ.spec.ts#L26
2) [browser] › browser/ツールバーカスタマイズダイアログ.spec.ts:8:5 › ツールバーのカスタマイズでボタンを追加でき、デフォルトに戻すこともできる ───────
Error: expect.toBeVisible: Error: strict mode violation: getByText('ツールバーのカスタマイズ') resolved to 2 elements:
1) <div data-v-ff8a05d9="" class="q-item__section column…>ツールバーのカスタマイズ</div> aka locator('#q-portal--menu--5').getByText('ツールバーのカスタマイズ')
2) <div data-v-d4bd8f9e="" class="q-toolbar__title ellip…>ツールバーのカスタマイズ</div> aka locator('#q-portal--dialog--6').getByText('ツールバーのカスタマイズ')
Call log:
- expect.toBeVisible with timeout 5000ms
- waiting for getByText('ツールバーのカスタマイズ')
24 | await getQuasarMenu(page, "ツールバーのカスタマイズ").click();
25 | await page.waitForTimeout(100);
> 26 | await expect(page.getByText("ツールバーのカスタマイズ")).toBeVisible();
| ^
27 |
28 | // 全部書き出しボタンを追加する
29 | expect(
at /Users/runner/work/voicevox/voicevox/tests/e2e/browser/ツールバーカスタマイズダイアログ.spec.ts:26:48
|
lint
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3, actions/setup-node@v3, actions/cache@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
unit-test
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3, actions/setup-node@v3, actions/cache@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
build-test
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3, actions/setup-node@v3, actions/cache@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
e2e-test (ubuntu-latest)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3, actions/setup-node@v3, actions/cache@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
e2e-test (windows-latest)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3, actions/setup-node@v3, actions/cache@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
e2e-test (macos-latest)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3, actions/setup-node@v3, actions/cache@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
Slow Test:
[electron] › electron/example.spec.ts#L1
[electron] › electron/example.spec.ts took 23.6s
|
commit-snapshots
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
🎭 Playwright Run Summary
1 skipped
20 passed (1.5m)
|
🎭 Playwright Run Summary
1 passed (46.5s)
|
🎭 Playwright Run Summary
1 flaky
[browser] › browser\音声パラメータ.spec.ts:12:5 › 音声パラメータ引き継ぎの設定 ──────────────────────────────────────
20 passed (2.1m)
|
🎭 Playwright Run Summary
1 passed (49.2s)
|
🎭 Playwright Run Summary
2 flaky
[browser] › browser/アクセント.spec.ts:7:5 › アクセント分割したらアクセント区間が増える ──────────────────────────────────
[browser] › browser/ツールバーカスタマイズダイアログ.spec.ts:8:5 › ツールバーのカスタマイズでボタンを追加でき、デフォルトに戻すこともできる ────────
1 skipped
18 passed (2.5m)
|
🎭 Playwright Run Summary
1 passed (30.5s)
|