The interaction cases test how a shared holding, period, chapter connection or recorded change affects related work. Each case names its related capabilities and workflows in frontmatter. A composite case remains proposed until executable assertions establish every part of its expected outcome.
Coverage
Rulegap: FND-MBR-MEM-094
Transitiongap: FND-MBR-MEM-094
Validationcovered
Permissiongap: FND-MBR-MEM-094
Edgegap: FND-MBR-MEM-094
Failurecovered
Boundarygap: FND-MBR-MEM-094
Concurrencycovered
Invariantgap: FND-MBR-MEM-094
Interactioncovered
Test Scenarios
9 scenarios proving CAP-MBR-MEM-012; 6 bound to an existing test.
01Decisions about other applications' subjects are refusedvalidationunitnegativetest
The well-known FAA workspace fixtures, or a workspace the test builds from them.
Steps
[
{
"do": "Deliver a golden decision document, and one about another application's subject kind.",
"expect": "The golden one parses; the other is refused.",
"provenance": "test",
"source": [
"services-membership:modules/applications/tests/unit/submissions-contracts.spec.ts#parses the golden delivery document",
"services-membership:modules/applications/tests/unit/submissions-contracts.spec.ts#refuses a decision about a subject kind that is not Membership’s"
]
}
]
Expected
The golden one parses; the other is refused.
Data
FAA programs, packages, units and members from the integration seed.
The well-known FAA workspace fixtures, or a workspace the test builds from them.
Steps
[
{
"do": "Map each join and membership code.",
"expect": "As the rule lists.",
"provenance": "test",
"source": [
"services-membership:modules/applications/tests/unit/submissions-contracts.spec.ts#maps a join’s codes onto the engine’s kinds",
"services-membership:modules/applications/tests/unit/submissions-contracts.spec.ts#maps renew, reinstate and change onto approved for a membership"
]
}
]
Expected
As the rule lists.
Data
FAA programs, packages, units and members from the integration seed.
The well-known FAA workspace fixtures, or a workspace the test builds from them.
Steps
[
{
"do": "Record a decision, redeliver it, deliver one naming it as superseded, and deliver a stale one.",
"expect": "Recorded, answered as recorded, replaced, ignored.",
"provenance": "test",
"source": [
"services-membership:modules/applications/tests/unit/submissions-contracts.spec.ts#records a first decision",
"services-membership:modules/applications/tests/unit/submissions-contracts.spec.ts#answers a redelivered decision as recorded",
"services-membership:modules/applications/tests/unit/submissions-contracts.spec.ts#records a decision that supersedes the recorded one",
"services-membership:modules/applications/tests/unit/submissions-contracts.spec.ts#ignores a decision a later one has replaced"
]
}
]
Expected
Recorded, answered as recorded, replaced, ignored.
Data
FAA programs, packages, units and members from the integration seed.
The well-known FAA workspace fixtures, or a workspace the test builds from them.
Steps
[
{
"do": "Deliver approval, rejection, revision required, withdrawal and closing outcomes to the pure status mapping.",
"expect": "The mapping returns decided for approval and rejection, awaiting applicant for revision, withdrawn for withdrawal and closed for closing.",
"provenance": "test",
"source": [
"services-membership:modules/applications/tests/unit/submissions-contracts.spec.ts#leaves the application decided, awaiting the applicant or withdrawn by the decision’s kind"
]
}
]
Expected
The mapping returns decided for approval and rejection, awaiting applicant for revision, withdrawn for withdrawal and closed for closing.
Data
FAA programs, packages, units and members from the integration seed.
The well-known FAA workspace fixtures, or a workspace the test builds from them.
Steps
[
{
"do": "Deliver Nia's approval with Atlanta chosen, then redeliver it.",
"expect": "One order for the package and Atlanta's dues is placed and recorded; the purchase stays pending; the redelivery calls neither port.",
"provenance": "test",
"source": [
"services-membership:modules/applications/tests/integration/decision-handler.integration.spec.ts#records an approval, places the dues order through the port (package and chapter dues), and acknowledges it",
"services-membership:modules/applications/tests/integration/decision-handler.integration.spec.ts#leaves the approved purchase pending in Membership until Commerce fulfils it",
"services-membership:modules/applications/tests/integration/decision-handler.integration.spec.ts#answers a redelivered decision as recorded and calls neither port again"
]
}
]
Expected
One order for the package and Atlanta's dues is placed and recorded; the purchase stays pending; the redelivery calls neither port.
Data
FAA programs, packages, units and members from the integration seed.
The well-known FAA workspace fixtures, or a workspace the test builds from them.
Steps
[
{
"do": "Reject an application whose purchase was placed; withdraw and close others.",
"expect": "Each pending term is cancelled with its reservation; the memberships remain.",
"provenance": "proposed",
"source": "services-membership:modules/applications/tests/integration/decision-handler.integration.spec.ts#cancels the pending term of a rejected application whose purchase was placed"
}
]
Expected
Each pending term is cancelled with its reservation; the memberships remain.
Data
FAA programs, packages, units and members from the integration seed.
The well-known FAA workspace fixtures, or a workspace the test builds from them.
Steps
[
{
"do": "Deliver a decision for a submission Membership has no application of.",
"expect": "Answered unknown_submission and not acknowledged.",
"provenance": "test",
"source": [
"services-membership:modules/applications/tests/integration/decision-handler.integration.spec.ts#does not acknowledge a decision for a submission it holds no application of"
]
}
]
Expected
Answered unknown_submission and not acknowledged.
Data
FAA programs, packages, units and members from the integration seed.
A corporate application carries selected people and a package with an assigned-seat cap.
Steps
[
{
"do": "Record the application approval, fulfil its purchase, and derive children from the selected people.",
"expect": "The decided application supplies the assignment candidates and the resulting assigned holdings respect the selected cap.",
"provenance": "proposed",
"source": [
"services-membership:modules/memberships/services/flowdown/organization-children.ts:wantedPeople",
"services-membership:modules/applications/tests/integration/decision-handler.integration.spec.ts#records an approval, places the dues order through the port (package and chapter dues), and acknowledges it"
]
}
]
Expected
The decided application supplies the assignment candidates and the resulting assigned holdings respect the selected cap.
Data
An isolated workspace with the specified membership, package, chapter and partner-port fixtures.
Source
services-membership:modules/memberships/services/flowdown/organization-children.ts:wantedPeople,services-membership:modules/applications/tests/integration/decision-handler.integration.spec.ts#records an approval, places the dues order through the port (package and chapter dues), and acknowledges it
09Keep an approved purchase pending until fulfilmentinteractionapiproposed
A typed application selects a package and dues-bearing chapter.
Steps
[
{
"do": "Deliver approval, inspect the placed purchase, redeliver approval, then fulfil the authorization.",
"expect": "The decision creates one pending purchase; only fulfilment commits coverage, and decision replay creates no second order.",
"provenance": "proposed",
"source": [
"services-membership:modules/applications/tests/integration/decision-handler.integration.spec.ts#answers requires_approval for the package the process reviews when no decided application is named",
"services-membership:modules/applications/tests/integration/decision-handler.integration.spec.ts#records an approval, places the dues order through the port (package and chapter dues), and acknowledges it"
]
}
]
Expected
The decision creates one pending purchase; only fulfilment commits coverage, and decision replay creates no second order.
Data
An isolated workspace with the specified membership, package, chapter and partner-port fixtures.
Source
services-membership:modules/applications/tests/integration/decision-handler.integration.spec.ts#answers requires_approval for the package the process reviews when no decided application is named,services-membership:modules/applications/tests/integration/decision-handler.integration.spec.ts#records an approval, places the dues order through the port (package and chapter dues), and acknowledges it