Skip to content

ATS-ACC-BKS-017Set accounting policy shared by the workspace: Capability Test Specification

Markdown

ATS-ACC-BKS-017

Set accounting policy shared by the workspace: Capability Test Specification

Markdown
  • DocumentProposed
  • Product intentProposed

KindAcceptance test setProduct areaAccountingModuleBooks, Business Units and Chart of AccountsRevision2

Read atservices-accounting f47cb263react-console baf6dae3

Coverage

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

Test Scenarios

8 scenarios proving CAP-ACC-BKS-017; 6 bound to an existing test.

01 Initialize settings at the correct versiontransitionapitest
Proves
BR-CAP-ACC-BKS-017-01 INV-DOM-ACC-BKS-006-04
Preconditions
The workspace has never saved settings.
Steps
Read defaults and attempt initial saves at versions one and zero.
Expected
Defaults use version zero; the version-one attempt fails and version zero creates version one.
Data
The setup needs no extra fixture records.
Bound to
Source
services-accounting:modules/books/tests/integration/services/persistence/settings.queries.integration.spec.js#answers the defaults at version 0 to a tenant that never saved, not another tenant’s row
02 Hold refunds for independent approvalrulebrowsertest
Proves
BR-CAP-ACC-BKS-017-03
Preconditions
Refund approval is enabled.
Steps
Submit the refund request.
Expected
It remains pending for approval by another person.
Data
The setup needs no extra fixture records.
Bound to
Source
react-console:acceptance/accounting/playwright/journeys/configuration/ACT-ACC-0047.spec.ts#ACT-ACC-0047
03 Distinguish omitted setting semanticsedgeapitest
Proves
BR-CAP-ACC-BKS-017-05
Preconditions
Settings select a statement, daily truncation and required service periods.
Steps
Save with those values omitted and then explicitly supplied.
Expected
Truncation and service-period choices persist on omission, statement returns to built-in and supplied values take effect.
Data
The setup needs no extra fixture records.
Bound to
Source
services-accounting:modules/books/tests/integration/services/persistence/settings.integration.spec.js#keeps both when a later save leaves them out, and puts them back to their defaults when sent
04 Default reconciliation and close switchesruleapitest
Proves
BR-CAP-ACC-BKS-017-06
Preconditions
A settings record omits both switches.
Steps
Read their stored values.
Expected
Independent reconciliation finalization defaults on; the close-verification default still requires its own execution assertion.
Data
The setup needs no extra fixture records.
Bound to
Source
services-accounting:modules/books/tests/integration/db/reconciliation-configuration.table.integration.spec.js#requires a second person to finalize a reconciliation when the settings do not say
05 Use settings permissions and versionspermissionapinegativetest
Proves
BR-CAP-ACC-BKS-017-07
Preconditions
Reader and administrator principals exist.
Steps
Read and replace settings with each and try a stale replacement.
Expected
The reader can inspect only, valid administration succeeds and the stale save fails.
Data
The setup needs no extra fixture records.
Bound to
Source
services-accounting:modules/books/tests/e2e/document-templates-security.e2e.spec.js#reads the settings
06 First-save version endpointsboundaryapinegativeproposed
Proves
BR-CAP-ACC-BKS-017-01
Preconditions
An isolated workspace has records needed for both eligible and ineligible examples.
Steps
Read unsaved settings, attempt a first save at version one, save at version zero, then repeat the old version-zero payload.
Expected
The first and repeated invalid versions are refused, leaving the successful first save intact.
Data
Run-owned records for the stated setup; retain the initial values for comparison.
Source
services-accounting:modules/books/tests/integration/services/persistence/settings.integration.spec.js#refuses a first save that is not at version 0
07 Refuse the second replacement of a shared read versionconcurrencyapinegativeproposed
Proves
BR-CAP-ACC-BKS-016-05
Preconditions
Two administrators read the same version of the relevant mutable record. Each prepares a different otherwise valid replacement.
Steps
Release both replacement requests from a barrier. Read the record again and retry the losing payload at its original version.
Expected
One replacement commits, the other is stale, and repeating the stale request preserves the winning values.
Data
Run-owned records for the stated setup; retain the initial values for comparison.
Source
services-accounting:modules/books/tests/e2e/payment-terms.e2e.spec.js#answers 400 naming is_active to a replacement that leaves it out
08 Changing statement selection moves template protectioninteractionbrowsertest
Proves
BR-CAP-ACC-BKS-017-07 BR-CAP-ACC-BKS-015-05
Preconditions
Run-owned records satisfy the preconditions of the referenced capability proofs.
Steps
Select a statement template, attempt its deletion, switch to built-in and repeat deletion.
Expected
The settings reference blocks removal until the choice is released.
Data
Run-owned records for the stated setup; retain the initial values for comparison.
Bound to
Source
services-accounting:modules/books/tests/e2e/document-templates-security.e2e.spec.js#is refused the settings’ save 403 permission_missing,services-accounting:modules/books/tests/e2e/document-templates.e2e.spec.js#answers 409 to deleting the business unit’s template, naming the unit

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.