Skip to content

ATS-ACC-BAT-010Advance a scheduled stream and post its predecessor: Capability Test Specification

Markdown

ATS-ACC-BAT-010

Advance a scheduled stream and post its predecessor: Capability Test Specification

Markdown
  • DocumentProposed
  • Product intentProposed

KindAcceptance test setProduct areaAccountingModuleBatch ManagementRevision2

Read atservices-accounting f47cb263react-console baf6dae3rhythm-v2-docs 37405d50

Advance a scheduled stream and post its predecessor: Capability Test Specification ​

Coverage ​

The scenarios define focused checks for this outcome. The coverage map distinguishes specified checks from unresolved proof; executable bindings identify inspected assertions and carry no execution result.

Manual intake occupies a generated name. Rolling does not duplicate a due close. Inactive intake survives until reactivation. These checks use the related capability’s outcome as part of the setup or verification. Unbound interactions remain proposed until a suite executes the complete chain.

Coverage

  • Rule covered
  • Transition gap: FND-ACC-BAT-064
  • Validation covered
  • Permission gap: FND-ACC-BAT-064
  • Edge covered
  • Failure covered
  • Boundary covered
  • Concurrency gap: FND-ACC-BAT-064
  • Invariant covered
  • Interaction covered

Test Scenarios

12 scenarios proving CAP-ACC-BAT-010; 6 bound to an existing test.

01 Occurrences use the workspace’s local dateboundaryapitest
Proves
BR-CAP-ACC-BAT-010-01
Preconditions
The Denver recurrence runs after six in the evening locally, on the following UTC date.
Steps
Deliver its due occurrence.
Expected
The batch uses the Denver date, rendered name, unit currency and fiscal context.
Data
Provide the schedule consumer in process.
Bound to
Source
services-accounting:modules/batches/tests/integration/services/roll/batch-roller.integration.spec.js#opens the new batch, dated the occurrence’s local date in Denver, and points the recurring batch at it
02 Retained names gain a suffixrulebrowsertest
Proves
BR-CAP-ACC-BAT-010-02
Preconditions
Two successive rolls encounter a populated prior batch and then an empty prior batch.
Steps
Deliver both occurrences and inspect allocated names.
Expected
Keeping the prior batch adds the next numeric suffix; deleting an empty prior batch releases the plain name.
Data
Provide a recurring batch on the acceptance workspace.
Bound to
Source
services-accounting:modules/batches/tests/integration/services/roll/batch-roller.integration.spec.js#names the new batch with the " (2)" suffix when the previous batch is kept and still holds the name
03 Roll retires the prior intake batchtransitionbrowsertest
Proves
BR-CAP-ACC-BAT-010-03 BR-CAP-ACC-BAT-010-04 BR-CAP-ACC-BAT-010-05
Preconditions
One current batch is empty and another contains payments.
Steps
Deliver each configuration’s due occurrence.
Expected
The empty batch is deleted without posting; the populated batch closes and one job posts it.
Data
Provide the deployed scheduler (journeys) or the in-process consumer (integration).
Bound to
Source
services-accounting:modules/batches/tests/integration/services/roll/batch-roller.integration.spec.js#posts the previous batch the roll leaves closed: one posting job of it, named in the run’s outcome
04 Occurrence identity prevents duplicate rollsinvariantapitest
Proves
BR-CAP-ACC-BAT-010-06 INV-DOM-ACC-BAT-001-08
Preconditions
The occurrence has already rolled successfully.
Steps
Deliver it again.
Expected
The existing result identifies the opened batch; no second batch or posting appears.
Data
Provide no fixtures beyond the stated setup.
Bound to
Source
services-accounting:modules/batches/tests/integration/services/roll/batch-roller.integration.spec.js#opens nothing for the same occurrence delivered again, and answers the same batch
05 Roll failure rolls back its writesfailureapinegativetest
Proves
BR-CAP-ACC-BAT-010-07
Preconditions
The roller fails after creating the replacement batch.
Steps
Deliver the occurrence.
Expected
The failure permits retry while leaving no replacement record and retaining the old current batch.
Data
Provide a failing roller double.
Bound to
Source
services-accounting:modules/batches/tests/integration/services/roll/batch-roller.integration.spec.js#leaves nothing: no new batch, the first batch still the active one, open
06 Repeated calendar failures pause schedulingfailureapinegativeproposed
Proves
BR-CAP-ACC-BAT-010-08
Preconditions
No fiscal year covers the configuration’s next occurrence date.
Steps
Deliver five occurrences and inspect the configuration.
Expected
Each failure explains the missing calendar and opens nothing; the fifth leaves the schedule paused with its reason.
Data
Provide fiscal years ending before the occurrences.
Source
services-accounting:docs/accounting/recurring-batches.md#The roll
07 Inactive delivery skips intakeedgeapinegativeproposed
Proves
BR-CAP-ACC-BAT-010-09
Preconditions
An inactive configuration still has a queued occurrence.
Steps
Deliver the stale occurrence.
Expected
The run records a skip reason without opening a batch.
Data
Provide no fixtures beyond the stated setup.
Source
services-accounting:modules/batches/services/roll/recurring-batch-roll.ts
08 Preview requires an available next occurrencevalidationapinegativetest
Proves
BR-CAP-ACC-BAT-010-11
Preconditions
Configurations include active, inactive, paused and disabled schedules.
Steps
Preview each configuration.
Expected
Only the active configuration returns its next plan without changing history; the others return 409.
Data
Provide no fixtures beyond the stated setup.
Bound to
Source
services-accounting:modules/batches/tests/integration/services/roll/preview-next-roll.integration.spec.js#refuses 409 for a recurring batch whose schedule the system paused
09 Manual intake occupies a generated nameinteractionapiproposed
Proves
BR-CAP-ACC-BAT-001-02 BR-CAP-ACC-BAT-010-02
Preconditions
An Open manual batch already has the rendered name Daily.
Steps
Roll the stream whose next rendered name is Daily and retrieve both batches.
Expected
The manual batch stays Daily and the generated batch is Daily (2).
Data
An isolated workspace with the stated business-unit calendar, documents and configuration.
Source
services-accounting:modules/batches/tests/integration/services/persistence/batches.integration.spec.js#refuses a name another batch of the unit has 409, name_in_use, in 1.0’s sentence (D14); services-accounting:modules/batches/tests/integration/services/roll/batch-roller.integration.spec.js#names the new batch with the " (2)" suffix when the previous batch is kept and still holds the name
10 Rolling does not duplicate a due closeinteractionapinegativeproposed
Proves
BR-CAP-ACC-BAT-005-04 BR-CAP-ACC-BAT-010-06
Preconditions
A populated active batch has a due close and the stream is due to roll.
Steps
Deliver close and roll occurrences in both orders using separate fixtures.
Expected
Each fixture has one replacement intake batch; the predecessor has no duplicate current posting.
Data
An isolated workspace with the stated business-unit calendar, documents and configuration.
Source
services-accounting:modules/batches/tests/integration/services/persistence/batches.integration.spec.js#posts nothing more when the same occurrence runs again: the batch is no longer open; services-accounting:modules/batches/tests/integration/services/roll/batch-roller.integration.spec.js#opens nothing for the same occurrence delivered again, and answers the same batch
11 Inactive intake survives until reactivationinteractionapiproposed
Proves
BR-CAP-ACC-BAT-009-07 BR-CAP-ACC-BAT-010-09
Preconditions
A stream has an Open active batch.
Steps
Deactivate it, deliver a stale occurrence, then reactivate with the current version.
Expected
The stale occurrence opens nothing; reactivation attempts a first batch and returns its result.
Data
An isolated workspace with the stated business-unit calendar, documents and configuration.
Source
services-accounting:modules/batches/tests/e2e/recurring-batches.e2e.spec.js#answers no next run once deactivated; services-accounting:modules/batches/services/roll/recurring-batch-roll.ts
12 Run history connects retirement to accountingruleapiproposed
Proves
BR-CAP-ACC-BAT-010-10
Preconditions
Two completed rolls have distinct occurrence times and outcomes.
Steps
Read the stream’s run history and inspect generated and replaced batch references and posting outcomes.
Expected
The later occurrence appears first and both outcomes retain their plan, disposition and accounting request or refusal.
Data
Owned records in an isolated workspace with the stated calendar and accounting setup.
Source
services-accounting:modules/batches/tests/e2e/recurring-batches.e2e.spec.js#answers the run the consumer recorded, every property of it

The Markdown files under specs/ in rhythmsoftware/rhythm-v2-docs are the canonical source of truth. This reader is a generated, read-only projection of them.