feat: introduce BookRepository as abstraction of OpenLibrary #1501
ci.yml
on: pull_request
Tests
2m 26s
Lint
1m 10s
Matrix: E2E Tests
Annotations
7 errors, 4 warnings, and 2 notices
[chromium] › admin/BookCreate.spec.ts:9:7 › Create a book @admin › I can create a book @write:
pwa/tests/admin/BookCreate.spec.ts#L12
1) [chromium] › admin/BookCreate.spec.ts:9:7 › Create a book @admin › I can create a book @Write ─
Error: locator.waitFor: Error: strict mode violation: getByRole('listbox').getByText('Frankenstein; Or, The Modern Prometheus - Shelley, Mary Wollstonecraft', { exact: true }) resolved to 4 elements:
1) <li tabindex="-1" role="option" id=":r1r:-option-0" data-option-index="0" aria-disabled="false" aria-selected="false" class="MuiAutocomplete-option">Frankenstein; Or, The Modern Prometheus - Shelley…</li> aka getByRole('option', { name: 'Frankenstein; Or, The Modern' }).first()
2) <li tabindex="-1" role="option" id=":r1r:-option-1" data-option-index="1" aria-disabled="false" aria-selected="false" class="MuiAutocomplete-option">Frankenstein; Or, The Modern Prometheus - Shelley…</li> aka getByRole('option', { name: 'Frankenstein; Or, The Modern' }).nth(1)
3) <li tabindex="-1" role="option" id=":r1r:-option-2" data-option-index="2" aria-disabled="false" aria-selected="false" class="MuiAutocomplete-option">Frankenstein; Or, The Modern Prometheus - Shelley…</li> aka getByRole('option', { name: 'Frankenstein; Or, The Modern' }).nth(2)
4) <li tabindex="-1" role="option" id=":r1r:-option-3" data-option-index="3" aria-disabled="false" aria-selected="false" class="MuiAutocomplete-option">Frankenstein; Or, The Modern Prometheus - Shelley…</li> aka getByRole('option', { name: 'Frankenstein; Or, The Modern' }).nth(3)
Call log:
- waiting for getByRole('listbox').getByText('Frankenstein; Or, The Modern Prometheus - Shelley, Mary Wollstonecraft', { exact: true }) to be visible
10 | // fill in Book Reference
11 | await page.getByLabel("Book Reference").fill("Frankenstein");
> 12 | await page.getByRole("listbox").getByText("Frankenstein; Or, The Modern Prometheus - Shelley, Mary Wollstonecraft", { exact: true }).waitFor({ state: "visible" });
| ^
13 | await page.getByRole("listbox").getByText("Frankenstein; Or, The Modern Prometheus - Shelley, Mary Wollstonecraft", { exact: true }).click();
14 | await expect(page.getByRole("listbox")).not.toBeAttached();
15 | await expect(page.getByLabel("Book Reference")).toHaveValue("Frankenstein; Or, The Modern Prometheus - Shelley, Mary Wollstonecraft");
at /home/runner/work/demo/demo/pwa/tests/admin/BookCreate.spec.ts:12:138
|
[chromium] › admin/BookCreate.spec.ts:9:7 › Create a book @admin › I can create a book @write:
pwa/tests/admin/BookCreate.spec.ts#L12
1) [chromium] › admin/BookCreate.spec.ts:9:7 › Create a book @admin › I can create a book @Write ─
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: locator.waitFor: Error: strict mode violation: getByRole('listbox').getByText('Frankenstein; Or, The Modern Prometheus - Shelley, Mary Wollstonecraft', { exact: true }) resolved to 4 elements:
1) <li tabindex="-1" role="option" id=":r1r:-option-0" data-option-index="0" aria-disabled="false" aria-selected="false" class="MuiAutocomplete-option">Frankenstein; Or, The Modern Prometheus - Shelley…</li> aka getByRole('option', { name: 'Frankenstein; Or, The Modern' }).first()
2) <li tabindex="-1" role="option" id=":r1r:-option-1" data-option-index="1" aria-disabled="false" aria-selected="false" class="MuiAutocomplete-option">Frankenstein; Or, The Modern Prometheus - Shelley…</li> aka getByRole('option', { name: 'Frankenstein; Or, The Modern' }).nth(1)
3) <li tabindex="-1" role="option" id=":r1r:-option-2" data-option-index="2" aria-disabled="false" aria-selected="false" class="MuiAutocomplete-option">Frankenstein; Or, The Modern Prometheus - Shelley…</li> aka getByRole('option', { name: 'Frankenstein; Or, The Modern' }).nth(2)
4) <li tabindex="-1" role="option" id=":r1r:-option-3" data-option-index="3" aria-disabled="false" aria-selected="false" class="MuiAutocomplete-option">Frankenstein; Or, The Modern Prometheus - Shelley…</li> aka getByRole('option', { name: 'Frankenstein; Or, The Modern' }).nth(3)
Call log:
- waiting for getByRole('listbox').getByText('Frankenstein; Or, The Modern Prometheus - Shelley, Mary Wollstonecraft', { exact: true }) to be visible
10 | // fill in Book Reference
11 | await page.getByLabel("Book Reference").fill("Frankenstein");
> 12 | await page.getByRole("listbox").getByText("Frankenstein; Or, The Modern Prometheus - Shelley, Mary Wollstonecraft", { exact: true }).waitFor({ state: "visible" });
| ^
13 | await page.getByRole("listbox").getByText("Frankenstein; Or, The Modern Prometheus - Shelley, Mary Wollstonecraft", { exact: true }).click();
14 | await expect(page.getByRole("listbox")).not.toBeAttached();
15 | await expect(page.getByLabel("Book Reference")).toHaveValue("Frankenstein; Or, The Modern Prometheus - Shelley, Mary Wollstonecraft");
at /home/runner/work/demo/demo/pwa/tests/admin/BookCreate.spec.ts:12:138
|
[chromium] › admin/BookEdit.spec.ts:9:7 › Edit a book @admin › I can edit a book @write:
pwa/tests/admin/BookEdit.spec.ts#L1
2) [chromium] › admin/BookEdit.spec.ts:9:7 › Edit a book @admin › I can edit a book @Write ───────
Test timeout of 45000ms exceeded.
|
[chromium] › admin/BookEdit.spec.ts:9:7 › Edit a book @admin › I can edit a book @write:
pwa/tests/admin/BookEdit.spec.ts#L12
2) [chromium] › admin/BookEdit.spec.ts:9:7 › Edit a book @admin › I can edit a book @Write ───────
Error: locator.waitFor: Test timeout of 45000ms exceeded.
Call log:
- waiting for getByRole('listbox').getByText('Eon - Greg Bear', { exact: true }) to be visible
10 | // fill in Book Reference
11 | await page.getByLabel("Book Reference").fill("Eon - Greg Bear");
> 12 | await page.getByRole("listbox").getByText("Eon - Greg Bear", { exact: true }).waitFor({ state: "visible" });
| ^
13 | await page.getByRole("listbox").getByText("Eon - Greg Bear", { exact: true }).click();
14 | await expect(page.getByRole("listbox")).not.toBeAttached();
15 | await expect(page.getByLabel("Book Reference")).toHaveValue("Eon - Greg Bear");
at /home/runner/work/demo/demo/pwa/tests/admin/BookEdit.spec.ts:12:83
|
[chromium] › admin/BookEdit.spec.ts:9:7 › Edit a book @admin › I can edit a book @write:
pwa/tests/admin/BookEdit.spec.ts#L1
2) [chromium] › admin/BookEdit.spec.ts:9:7 › Edit a book @admin › I can edit a book @Write ───────
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Test timeout of 45000ms exceeded.
|
[chromium] › admin/BookEdit.spec.ts:9:7 › Edit a book @admin › I can edit a book @write:
pwa/tests/admin/BookEdit.spec.ts#L12
2) [chromium] › admin/BookEdit.spec.ts:9:7 › Edit a book @admin › I can edit a book @Write ───────
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: locator.waitFor: Test timeout of 45000ms exceeded.
Call log:
- waiting for getByRole('listbox').getByText('Eon - Greg Bear', { exact: true }) to be visible
10 | // fill in Book Reference
11 | await page.getByLabel("Book Reference").fill("Eon - Greg Bear");
> 12 | await page.getByRole("listbox").getByText("Eon - Greg Bear", { exact: true }).waitFor({ state: "visible" });
| ^
13 | await page.getByRole("listbox").getByText("Eon - Greg Bear", { exact: true }).click();
14 | await expect(page.getByRole("listbox")).not.toBeAttached();
15 | await expect(page.getByLabel("Book Reference")).toHaveValue("Eon - Greg Bear");
at /home/runner/work/demo/demo/pwa/tests/admin/BookEdit.spec.ts:12:83
|
E2E Tests (@write)
The action 'Run Playwright' has timed out after 3 minutes.
|
Slow Test:
pwa/[chromium] › BookView.spec.ts#L1
pwa/[chromium] › BookView.spec.ts took 51.1s
|
Slow Test:
pwa/[chromium] › BooksList.spec.ts#L1
pwa/[chromium] › BooksList.spec.ts took 36.3s
|
Slow Test:
pwa/[chromium] › BookmarksList.spec.ts#L1
pwa/[chromium] › BookmarksList.spec.ts took 31.5s
|
Slow Test:
pwa/[chromium] › BookView.spec.ts#L1
pwa/[chromium] › BookView.spec.ts took 47.8s
|
🎭 Playwright Run Summary
25 passed (2.6m)
|
|
Artifacts
Produced during runtime
Name | Size | |
---|---|---|
api-platform~demo~DVL19V+2.dockerbuild
|
224 KB |
|
api-platform~demo~K9HYY9+2.dockerbuild
|
161 KB |
|
api-platform~demo~T3I07K+2.dockerbuild
|
211 KB |
|
playwright-screenshots
|
3.48 MB |
|