An immediate export and a scheduled delivery must produce usable output under the authority of the person responsible for the work. These scenarios connect complete query results, retained definitions, recipient links and later ownership changes. The suite keeps delivery recovery separate from the existence of an earlier file.
The access-loss journey withdraws the owner’s report access and checks the next occurrence, its export and its recipient messages. It then attempts takeover without sufficient authority before transferring ownership to an administrator and resuming delivery. The other scenarios connect export retries, source refresh and report removal to their effects on future work and retained output.
A query spans multiple pages and a schedule pins its current definition.
Steps
Export it immediately, execute its schedule and compare both files with the complete ordered query answer.
Expected
Each file contains the pinned answer once; each scheduled recipient has one personal communication request.
Data
Use an isolated workspace, named fixture records and the caller grants described by the prerequisites.
Source
services-platform:modules/queries/tests/integration/services/exports/run-query-export.integration.spec.js#writes every planted row exactly once, in the query’s sort, with no gap,services-platform:modules/queries/tests/integration/services/schedules/query-schedule-routes.integration.spec.js#flags the saved query as changed since the schedule was set up,services-platform:modules/queries/tests/integration/services/schedules/scheduled-delivery.integration.spec.js#asks for one e-mail per deliverable recipient, each under the key <run id>:<recipient id>
02A recipient retry reuses the existing fileinteractionproposed
A query schedule pins a definition before the saved question changes.
Steps
Edit the question, run the schedule, refresh its source, run again and remove the schedule.
Expected
The first run uses the earlier copy and the second uses the refreshed one; retained files keep their original output and expiry.
Data
Use an isolated workspace, named fixture records and the caller grants described by the prerequisites.
Source
services-platform:modules/queries/tests/integration/services/schedules/query-schedule-routes.integration.spec.js#flags the saved query as changed since the schedule was set up,services-platform:modules/queries/tests/integration/services/exports/run-query-export.integration.spec.js#writes every planted row exactly once, in the query’s sort, with no gap,services-platform:modules/queries/tests/e2e/reports.e2e.spec.js#refuses to delete a saved query a report presents as 409 saved_query_reported
04Report access loss pauses delivery until an authorized takeoverpermissionnegativetest
An author owns an active report schedule with two recipients; an administrator can manage the schedule and run its report.
Steps
After a successful occurrence, make the report private so its owner loses report access; inspect the next occurrence, attempt takeover as the owner, then take ownership as the administrator and resume.
Expected
The inaccessible occurrence fails with no export, delivery or recipient message and pauses the schedule; the author’s takeover is refused, while administrator takeover and resume permit the next occurrence to send to both recipients.
Data
Use an isolated workspace, named fixture records and the caller grants described by the prerequisites.
A table report has a completed file and a live report schedule.
Steps
Delete the report, download the retained file, try resuming the schedule and then delete the schedule.
Expected
The file remains downloadable until its deadline; report-deleted recurrence cannot restart and schedule deletion removes its run history.
Data
Use an isolated workspace, named fixture records and the caller grants described by the prerequisites.
Source
services-platform:modules/queries/tests/e2e/query-schedules.e2e.spec.js#pauses the schedule report_deleted, its report gone,react-console:acceptance/reporting/playwright/journeys/print-and-export/RPT-ACC-0349.spec.ts#RPT-ACC-0349,services-platform:modules/queries/tests/integration/services/exports/query-export-routes.integration.spec.js#answers the requester their export