Skip to content

ATS-ACC-CLS-001Understand a business unit’s close calendar: Capability Test Specification

Markdown

ATS-ACC-CLS-001

Understand a business unit’s close calendar: Capability Test Specification

Markdown
  • DocumentProposed

KindAcceptance test setProduct areaAccountingModuleMonth-End ClosingRevision2

Read atservices-accounting f47cb263react-console baf6dae3

Coverage

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

Test Scenarios

8 scenarios proving CAP-ACC-CLS-001; 5 bound to an existing test.

01 Locate the current period across yearsruleapitest
Proves
BR-CAP-ACC-CLS-001-02
Preconditions
Earlier months are closed and later months remain open.
Steps
Request the business unit’s calendar.
Expected
Only the earliest unfinished month is current, including after a year boundary.
Data
A unit calendar spanning two years.
Bound to
Source
services-accounting:modules/fiscal-close/tests/integration/services/periods/period-calendar.integration.spec.js#marks the first period not closed current, the next year’s January
02 Reject inconsistent close stamps and correction countsinvariantapinegativetest
Proves
BR-CAP-ACC-CLS-001-03 BR-CAP-ACC-CLS-001-04 INV-DOM-ACC-CLS-001-02 INV-DOM-ACC-CLS-001-05
Preconditions
Period constraints are active.
Steps
Insert closed periods without stamps, nonclosed periods with stamps and a negative correction count.
Expected
All inconsistent writes fail.
Data
Period rows with invalid close metadata.
Bound to
Source
services-accounting:modules/fiscal-close/tests/integration/db/fiscal-close.table.integration.spec.js#refuses a closed period without its closer
03 Derive the year state from its periodstransitionapitest
Proves
BR-CAP-ACC-CLS-001-05 INV-DOM-ACC-CLS-001-07
Preconditions
The first eleven periods are closed.
Steps
Move the final period through closing, closed and reopening, and read the calendar.
Expected
The year follows completion and reopening, with final-period close details when closed.
Data
One nearly completed fiscal year.
Bound to
Source
services-accounting:modules/fiscal-close/tests/integration/services/persistence/fiscal-periods.integration.spec.js#becomes closed exactly when its twelfth period closes
04 Validate calendar access and unit selectionvalidationapinegativetest
Proves
BR-CAP-ACC-CLS-001-06 BR-CAP-ACC-CLS-001-07
Preconditions
One caller has read authority and another lacks it.
Steps
Request a calendar without a unit, for a foreign unit and without read authority.
Expected
Responses are validation failure, not found and access denied respectively.
Data
Two callers and two workspaces.
Bound to
services-accounting:modules/fiscal-close/tests/e2e/fiscal-close-readiness.e2e.spec.js#refuses a principal without accounting.fiscal-periods.read with 403
Source
services-accounting:modules/fiscal-close/tests/e2e/fiscal-close-readiness.e2e.spec.js#the periods
05 Control access to the close workspacepermissionbrowsernegativeproposed
Proves
BR-CAP-ACC-CLS-001-07
Preconditions
The console user lacks the fiscal-period read grant.
Steps
Inspect the Accounting menu and visit the close workspace directly.
Expected
The menu omits the entry and direct access is refused.
Data
A user without close-workspace read access.
Source
react-console:app/(console)/console/[tenantId]/accounting/close/layout.tsx:CloseLayout
06 Follow a final-month close into the next calendar yearinteractionapiproposed
Proves
BR-CAP-ACC-CLS-001-02 BR-CAP-ACC-CLS-001-05
Preconditions
A unit has eleven closed months and a clean final month, with future years available.
Steps
Read the current month and its authorization; close it, then read the calendar and execution history.
Expected
The final month’s result agrees with year standing, the next current month and the recorded run.
Data
A unit has eleven closed months and a clean final month, with future years available.
Source
rhythm-v2-docs:specs/accounting/close/design/workflows/WF-ACC-CLS-001-close-a-month.md#What It Does,services-accounting:modules/fiscal-close/tests/integration/services/periods/period-calendar.integration.spec.js#marks the first period not closed current, the next year’s January,services-accounting:modules/fiscal-close/tests/integration/services/persistence/fiscal-periods.integration.spec.js#becomes closed exactly when its twelfth period closes
07 Read calendars on each side of the year limitboundaryapinegativeproposed
Proves
BR-CAP-ACC-CLS-001-09
Preconditions
A unit has exactly one hundred fiscal years; another has one hundred and one.
Steps
Request each complete calendar.
Expected
The first request returns the complete ordered calendar; the second refuses rather than returning a truncated calendar.
Data
A unit has exactly one hundred fiscal years; another has one hundred and one.
Source
services-accounting:modules/fiscal-close/services/persistence/fiscal-periods.ts:listCloseCalendar
08 Read the complete ordered calendarruleapitest
Proves
BR-CAP-ACC-CLS-001-01
Preconditions
A workspace contains two years for one unit and a separate unit in another workspace.
Steps
Read the first unit’s calendar and its closing metadata.
Expected
The selected unit’s years and months appear in date order with the stored close details; foreign calendar data is excluded.
Data
A workspace contains two years for one unit and a separate unit in another workspace.
Bound to
Source
services-accounting:modules/fiscal-close/tests/integration/services/persistence/fiscal-periods.queries.integration.spec.js#answers the unit’s years oldest first, each mapped whole

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.