Skip to content

ATS-PFM-TNL-010Supply application data for workspace exports: Capability Test Specification

Markdown

ATS-PFM-TNL-010

Supply application data for workspace exports: Capability Test Specification

Markdown
  • DocumentProposed

Planning

Proves capability
CAP-PFM-TNL-010

Design

Executed by
TST-PFM-TNL-022

KindAcceptance test setProduct areaPlatformModuleWorkspace Lifecycle Across ApplicationsRevision3

Read atservices-platform ad3f6a65services-crm a8d1364fservices-commerce c8b66a98services-committees 36129c24services-membership 5994c270services-submissions 64236c19services-websites 5fc6823cservices-marketing d071a159rhythm-v2-docs d318a948

Coverage

  • Rule covered
  • Transition not-applicable
  • Validation covered
  • Permission not-applicable
  • Edge gap: FND-PFM-TNL-075
  • Failure gap: FND-PFM-TNL-075
  • Boundary covered
  • Concurrency gap: FND-PFM-TNL-075
  • Invariant covered
  • Interaction covered

Test Scenarios

5 scenarios proving CAP-PFM-TNL-010; 4 bound to an existing test.

01 Dataset continuation spans multiple partsruleapitest
Proves
BR-CAP-PFM-TNL-010-01
Preconditions
The requested workspace has more records than one batch.
Steps
Page the export until completion.
Expected
Each batch supplies part information and continuation until no records remain.
Data
Use the run-owned records and caller contexts created by the cited tests; use their provider and clock seams only where declared.
Bound to
services-crm:modules/tenant-lifecycle/tests/integration/services/export/tenant-export.integration.spec.js#pages a dataset of more records than a batch holds, the cursor carrying it on
Source
services-crm:modules/tenant-lifecycle/tests/integration/services/export/tenant-export.integration.spec.js#pages a dataset of more records than a batch holds, the cursor carrying it on
02 Export classifications cover declarationsinvariantunittest
Proves
BR-CAP-PFM-TNL-010-02
Preconditions
The exporting applications expose datasets and resources.
Steps
Check the resource-to-dataset classifications.
Expected
Every declared resource has a classification and exported resources have one dataset home.
Data
Use the run-owned records and caller contexts created by the cited tests; use their provider and clock seams only where declared.
Bound to
services-crm:modules/tenant-lifecycle/tests/integration/services/export/tenant-export.integration.spec.js#exports every row of the tenant’s exported tables exactly once, in its record or inline on its parent
services-crm:modules/tenant-lifecycle/tests/integration/services/export/tenant-export.integration.spec.js#withholds every declared table it does not export, each with its class and reason
services-websites:modules/tenant-lifecycle/tests/unit/participants/export-coverage.spec.js#classifies every resource, gathers every exported one in exactly one dataset, and has no dataset problem
services-membership:modules/tenant-lifecycle/tests/unit/export-coverage.spec.ts#classifies every resource, gathers each exported one in one dataset of its own participant and covers every object
Source
services-crm:modules/tenant-lifecycle/tests/integration/services/export/tenant-export.integration.spec.js#exports every row of the tenant’s exported tables exactly once, in its record or inline on its parent
03 Export values remain isolatedboundaryapitest
Proves
BR-CAP-PFM-TNL-010-03
Preconditions
Two workspaces contain distinguishable data.
Steps
Export one workspace.
Expected
Output identifies that workspace and includes none of its neighbor’s values.
Data
Use the run-owned records and caller contexts created by the cited tests; use their provider and clock seams only where declared.
Bound to
Source
services-crm:modules/tenant-lifecycle/tests/integration/services/export/tenant-export.integration.spec.js#stamps every record with the exported tenant
04 CRM rejects foreign export destinationsvalidationapinegativetest
Proves
BR-CAP-PFM-TNL-010-04
Preconditions
Requests name an undeclared dataset or foreign staging prefix.
Steps
Dispatch each CRM export request.
Expected
Invalid destinations refuse before reading and unsupported datasets are identified.
Data
Use the run-owned records and caller contexts created by the cited tests; use their provider and clock seams only where declared.
Bound to
services-crm:modules/tenant-lifecycle/tests/integration/services/export/tenant-export.integration.spec.js#answers blocked for a dataset the participant does not declare, naming it
services-crm:modules/tenant-lifecycle/tests/integration/services/export/tenant-export.integration.spec.js#answers blocked for a staging bucket other than the one this deploy may write to
services-crm:modules/tenant-lifecycle/tests/integration/services/export/tenant-export.integration.spec.js#refuses a staging prefix outside this service’s own as an invalid request, before anything is read
Source
services-crm:modules/tenant-lifecycle/tests/integration/services/export/tenant-export.integration.spec.js#answers blocked for a dataset the participant does not declare, naming it
05 Export classification tracks changed participant declarationsinteractionapinegativeproposed
Proves
BR-CAP-PFM-TNL-010-02
Preconditions
An exporting application adds a workspace-owned table to its participant declaration without classifying it for export.
Steps
Run declaration and export completeness checks, supply a classification and rerun the export coverage check.
Expected
Declaration coverage alone cannot make export coverage pass; the missing classification is reported until the table has a dataset home or withholding reason.
Data
Create a separate run-owned workspace for each decision branch and an unaffected comparison workspace. Use a controlled clock, paused task or injected fault at the boundary named in the scenario.
Source
rhythm-v2-docs:specs/platform/tenant-lifecycle/planning/capabilities/CAP-PFM-TNL-010-contribute-each-application-s-records-to-a-whole-workspace.md; rhythm-v2-docs:specs/platform/tenant-lifecycle/planning/capabilities/CAP-PFM-TNL-007-register-each-application-s-part-in-a-workspace-s-life.md

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.