435 — should check ${variant.name} report¶
Description¶
Verifies the Reports → Tasks tab summary and task list for each period variant (default week, last week, next week, whole year). For every variant the UI totals and the per-task aggregates (hours, billable, cost) must match the task and time-record data fetched from the API for that date range.
Preconditions¶
- Signed-in tenant owner Octavia Wolff on a 1920×1080 viewport.
- Seeded test data: 4 clients, 4 simple projects, 6 tasks (one on project 1, four on project 2, one on project 3) and 11 time records linked to those tasks across the current/neighbouring weeks and wider year.
- Reports page is open with the Tasks tab active.
Steps¶
- Switch the report's date range to the variant under test — current week (no-op), left arrow for last week, right arrow for next week, or open the date picker and click the year row for the whole year. Expected: the date range above the table updates to that period.
- Re-fetch tasks and time records from the API. Expected: the summary header (total hours, billable, cost, profit) on the Tasks tab matches the aggregate of time records inside the variant's window, grouped by task.
- Expected: the Tasks table shows 6 rows — every seeded task is listed regardless of how many time records fall inside the window.
- Build the expected per-task summaries (task title, project, user, duration, billable, cost) from the API. Expected: each task row matches its expected summary.
Related¶
- Spec:
playwright/tests/integration/reports.spec.ts(line 328)
Related¶
- Spec:
playwright/tests/integration/reports.spec.ts(line 328)