feat(tasks): allow changing a task's project from the detail sheet #232
ui-tests.yml
on: pull_request
Playwright E2E Tests
16m 43s
Annotations
10 errors, 1 warning, and 1 notice
|
[chromium] › e2e/tests/task-pinning.spec.ts:172:6 › Task Pinning › should unpin a task via P keyboard shortcut in detail sheet:
e2e/tests/task-pinning.spec.ts#L196
4) [chromium] › e2e/tests/task-pinning.spec.ts:172:6 › Task Pinning › should unpin a task via P keyboard shortcut in detail sheet
Error: expect(received).not.toContain(expected) // indexOf
Expected value: not "TASK-00101"
Received array: ["TASK-00101"]
194 |
195 | const pinned = await getPinnedFromStorage(page);
> 196 | expect(pinned).not.toContain(taskB.name);
| ^
197 | });
198 |
199 | test("should pin task via detail sheet button", async ({ page }) => {
at /home/runner/work/hive/hive/e2e/tests/task-pinning.spec.ts:196:22
|
|
[chromium] › e2e/tests/task-pinning.spec.ts:150:6 › Task Pinning › should pin a task via P keyboard shortcut in detail sheet:
e2e/tests/task-pinning.spec.ts#L169
3) [chromium] › e2e/tests/task-pinning.spec.ts:150:6 › Task Pinning › should pin a task via P keyboard shortcut in detail sheet
Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toContain(expected) // indexOf
Expected value: "TASK-00097"
Received array: []
167 | // Verify: task appears in localStorage
168 | const pinned = await getPinnedFromStorage(page);
> 169 | expect(pinned).toContain(taskB.name);
| ^
170 | });
171 |
172 | test("should unpin a task via P keyboard shortcut in detail sheet", async ({
at /home/runner/work/hive/hive/e2e/tests/task-pinning.spec.ts:169:18
|
|
[chromium] › e2e/tests/task-pinning.spec.ts:150:6 › Task Pinning › should pin a task via P keyboard shortcut in detail sheet:
e2e/tests/task-pinning.spec.ts#L169
3) [chromium] › e2e/tests/task-pinning.spec.ts:150:6 › Task Pinning › should pin a task via P keyboard shortcut in detail sheet
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toContain(expected) // indexOf
Expected value: "TASK-00093"
Received array: []
167 | // Verify: task appears in localStorage
168 | const pinned = await getPinnedFromStorage(page);
> 169 | expect(pinned).toContain(taskB.name);
| ^
170 | });
171 |
172 | test("should unpin a task via P keyboard shortcut in detail sheet", async ({
at /home/runner/work/hive/hive/e2e/tests/task-pinning.spec.ts:169:18
|
|
[chromium] › e2e/tests/task-pinning.spec.ts:150:6 › Task Pinning › should pin a task via P keyboard shortcut in detail sheet:
e2e/tests/task-pinning.spec.ts#L169
3) [chromium] › e2e/tests/task-pinning.spec.ts:150:6 › Task Pinning › should pin a task via P keyboard shortcut in detail sheet
Error: expect(received).toContain(expected) // indexOf
Expected value: "TASK-00089"
Received array: []
167 | // Verify: task appears in localStorage
168 | const pinned = await getPinnedFromStorage(page);
> 169 | expect(pinned).toContain(taskB.name);
| ^
170 | });
171 |
172 | test("should unpin a task via P keyboard shortcut in detail sheet", async ({
at /home/runner/work/hive/hive/e2e/tests/task-pinning.spec.ts:169:18
|
|
[chromium] › e2e/tests/project-types.spec.ts:124:6 › Project Types › should delete a project type:
e2e/tests/project-types.spec.ts#L146
2) [chromium] › e2e/tests/project-types.spec.ts:124:6 › Project Types › should delete a project type
Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(locator).toBeVisible() failed
Locator: getByText('Project type "E2E PT Del 1783919348022" removed')
Expected: visible
Timeout: 10000ms
Error: element(s) not found
Call log:
- Expect "toBeVisible" with timeout 10000ms
- waiting for getByText('Project type "E2E PT Del 1783919348022" removed')
144 | await expect(
145 | page.getByText(`Project type "${typeName}" removed`),
> 146 | ).toBeVisible({ timeout: 10000 });
| ^
147 |
148 | // Verify it's no longer in the list
149 | await expect(dialog.getByText(typeName)).not.toBeVisible({
at /home/runner/work/hive/hive/e2e/tests/project-types.spec.ts:146:5
|
|
[chromium] › e2e/tests/project-types.spec.ts:124:6 › Project Types › should delete a project type:
e2e/tests/project-types.spec.ts#L146
2) [chromium] › e2e/tests/project-types.spec.ts:124:6 › Project Types › should delete a project type
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(locator).toBeVisible() failed
Locator: getByText('Project type "E2E PT Del 1783919333261" removed')
Expected: visible
Timeout: 10000ms
Error: element(s) not found
Call log:
- Expect "toBeVisible" with timeout 10000ms
- waiting for getByText('Project type "E2E PT Del 1783919333261" removed')
144 | await expect(
145 | page.getByText(`Project type "${typeName}" removed`),
> 146 | ).toBeVisible({ timeout: 10000 });
| ^
147 |
148 | // Verify it's no longer in the list
149 | await expect(dialog.getByText(typeName)).not.toBeVisible({
at /home/runner/work/hive/hive/e2e/tests/project-types.spec.ts:146:5
|
|
[chromium] › e2e/tests/project-types.spec.ts:124:6 › Project Types › should delete a project type:
e2e/tests/project-types.spec.ts#L146
2) [chromium] › e2e/tests/project-types.spec.ts:124:6 › Project Types › should delete a project type
Error: expect(locator).toBeVisible() failed
Locator: getByText('Project type "E2E PT Del 1783919319062" removed')
Expected: visible
Timeout: 10000ms
Error: element(s) not found
Call log:
- Expect "toBeVisible" with timeout 10000ms
- waiting for getByText('Project type "E2E PT Del 1783919319062" removed')
144 | await expect(
145 | page.getByText(`Project type "${typeName}" removed`),
> 146 | ).toBeVisible({ timeout: 10000 });
| ^
147 |
148 | // Verify it's no longer in the list
149 | await expect(dialog.getByText(typeName)).not.toBeVisible({
at /home/runner/work/hive/hive/e2e/tests/project-types.spec.ts:146:5
|
|
[chromium] › e2e/tests/lock-due-date.spec.ts:163:6 › Lock Due Date Config › due date is locked (read-only) for task with past due date:
e2e/tests/lock-due-date.spec.ts#L180
1) [chromium] › e2e/tests/lock-due-date.spec.ts:163:6 › Lock Due Date Config › due date is locked (read-only) for task with past due date
Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(locator).toHaveCount(expected) failed
Locator: locator('[role="dialog"]').locator('.grid.gap-2').filter({ hasText: 'Due Date' }).locator('button')
Expected: 0
Received: 1
Timeout: 10000ms
Call log:
- Expect "toHaveCount" with timeout 10000ms
- waiting for locator('[role="dialog"]').locator('.grid.gap-2').filter({ hasText: 'Due Date' }).locator('button')
14 × locator resolved to 1 element
- unexpected value "1"
178 | // There should be no DatePicker button in the Due Date section
179 | const datePickerBtn = dueDateLabel.locator("button");
> 180 | await expect(datePickerBtn).toHaveCount(0);
| ^
181 | });
182 |
183 | test("due date is editable for task with future due date", async ({
at /home/runner/work/hive/hive/e2e/tests/lock-due-date.spec.ts:180:31
|
|
[chromium] › e2e/tests/lock-due-date.spec.ts:163:6 › Lock Due Date Config › due date is locked (read-only) for task with past due date:
e2e/tests/lock-due-date.spec.ts#L180
1) [chromium] › e2e/tests/lock-due-date.spec.ts:163:6 › Lock Due Date Config › due date is locked (read-only) for task with past due date
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(locator).toHaveCount(expected) failed
Locator: locator('[role="dialog"]').locator('.grid.gap-2').filter({ hasText: 'Due Date' }).locator('button')
Expected: 0
Received: 1
Timeout: 10000ms
Call log:
- Expect "toHaveCount" with timeout 10000ms
- waiting for locator('[role="dialog"]').locator('.grid.gap-2').filter({ hasText: 'Due Date' }).locator('button')
14 × locator resolved to 1 element
- unexpected value "1"
178 | // There should be no DatePicker button in the Due Date section
179 | const datePickerBtn = dueDateLabel.locator("button");
> 180 | await expect(datePickerBtn).toHaveCount(0);
| ^
181 | });
182 |
183 | test("due date is editable for task with future due date", async ({
at /home/runner/work/hive/hive/e2e/tests/lock-due-date.spec.ts:180:31
|
|
[chromium] › e2e/tests/lock-due-date.spec.ts:163:6 › Lock Due Date Config › due date is locked (read-only) for task with past due date:
e2e/tests/lock-due-date.spec.ts#L180
1) [chromium] › e2e/tests/lock-due-date.spec.ts:163:6 › Lock Due Date Config › due date is locked (read-only) for task with past due date
Error: expect(locator).toHaveCount(expected) failed
Locator: locator('[role="dialog"]').locator('.grid.gap-2').filter({ hasText: 'Due Date' }).locator('button')
Expected: 0
Received: 1
Timeout: 10000ms
Call log:
- Expect "toHaveCount" with timeout 10000ms
- waiting for locator('[role="dialog"]').locator('.grid.gap-2').filter({ hasText: 'Due Date' }).locator('button')
14 × locator resolved to 1 element
- unexpected value "1"
178 | // There should be no DatePicker button in the Due Date section
179 | const datePickerBtn = dueDateLabel.locator("button");
> 180 | await expect(datePickerBtn).toHaveCount(0);
| ^
181 | });
182 |
183 | test("due date is editable for task with future due date", async ({
at /home/runner/work/hive/hive/e2e/tests/lock-due-date.spec.ts:180:31
|
|
Playwright E2E Tests
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
🎭 Playwright Run Summary
6 failed
[chromium] › e2e/tests/lock-due-date.spec.ts:163:6 › Lock Due Date Config › due date is locked (read-only) for task with past due date
[chromium] › e2e/tests/project-types.spec.ts:124:6 › Project Types › should delete a project type
[chromium] › e2e/tests/task-pinning.spec.ts:150:6 › Task Pinning › should pin a task via P keyboard shortcut in detail sheet
[chromium] › e2e/tests/task-pinning.spec.ts:172:6 › Task Pinning › should unpin a task via P keyboard shortcut in detail sheet
[chromium] › e2e/tests/tasks.spec.ts:132:6 › Tasks › should open task detail sheet and update the title
[chromium] › e2e/tests/tasks.spec.ts:182:6 › Tasks › should update task priority via the detail sheet
2 flaky
[chromium] › e2e/tests/lock-due-date.spec.ts:183:6 › Lock Due Date Config › due date is editable for task with future due date
[chromium] › e2e/tests/lock-due-date.spec.ts:201:6 › Lock Due Date Config › due date is editable when lock setting is disabled
133 passed (13.1m)
|
Artifacts
Produced during runtime
| Name | Size | Digest | |
|---|---|---|---|
|
playwright-report
Expired
|
23.6 MB |
sha256:9d5758f378894b97b16769d2a6a3255fc0a9181565807f65e35307f3378d80ed
|
|
|
test-results
Expired
|
22.8 MB |
sha256:17e3d2258821dda59aa8dbb6c25c60cefdedf66d72c9779d8a5413b5a31ba24d
|
|