This suite tests a consistent boundary around officer work, captured exports and personal membership views. The same fixtures exercise visible records, permitted contact fields and financial lines.
The composite cases test the effect of a change in one capability on the records and answers of another. Detailed reliance links identify the supporting capability scenarios; an executable binding requires assertions for the complete feature case. Cases without such a binding remain proposed.
A regional officer reaches one member but not another; the member has a linked portal account.
Steps
[object Object]
Expected
The officer sees only reachable members, CRM receives the permitted change with the officer identity, and the personal view returns the linked member’s holdings.
Data
An isolated workspace, dated member fixtures, chapter and package configuration, and recording partner ports where the case requires them.
services-membership:tests/e2e/s07-regional-officer.e2e.spec.ts,services-membership:modules/memberships/tests/integration/services/unit-scope.integration.spec.ts#reads Jo for the Atlanta officer, the Savannah affiliation marked out of scope,services-membership:modules/memberships/tests/integration/services/unit-scope.integration.spec.ts#passes an allowed field to CRM’s contact update as the officer,services-membership:tests/e2e/s07-regional-officer.e2e.spec.ts#lets Jo read her own memberships in the portal
02Keep exported inclusion fixed after an appointment endsinteractionproposed
An officer’s current appointment reaches a populated chapter.
Steps
[object Object]
Expected
The fresh request is refused while the earlier export keeps its captured membership set.
Data
An isolated workspace, dated member fixtures, chapter and package configuration, and recording partner ports where the case requires them.
Source
services-membership:tests/e2e/s12-expiring-appointment.e2e.spec.ts#answers Lee’s roster while the assignment is within its grace,services-membership:modules/memberships/tests/integration/services/unit-scope.integration.spec.ts#captures the ids the requester’s set reaches at request time
03Replace officer authority at the appointment boundarylifecycleproposed
An outgoing appointment ends and a successor appointment begins at a later instant.
Steps
[object Object]
Expected
Each request uses the appointment in force; neither officer gains authority outside their validity window.
Data
An isolated workspace, dated member fixtures, chapter and package configuration, and recording partner ports where the case requires them.
Source
services-membership:tests/e2e/s12-expiring-appointment.e2e.spec.ts#answers Lee’s roster while the assignment is within its grace,services-membership:modules/memberships/tests/integration/services/unit-scope.integration.spec.ts#refuses a field outside the list, field_not_allowed naming it, and sends nothing
04Withhold unreachable chapters and financial linespermissionnegativeproposed
A chapter officer reaches one of a member’s two affiliations.
Steps
[object Object]
Expected
The reachable member is readable, only reachable financial lines appear, and unauthorized chapter changes and export reads are refused.
Data
An isolated workspace, dated member fixtures, chapter and package configuration, and recording partner ports where the case requires them.
Source
services-membership:modules/memberships/tests/integration/services/unit-scope.integration.spec.ts#refuses the Atlanta officer ending Jo’s Savannah row, out_of_scope naming Savannah,services-membership:modules/memberships/tests/integration/services/unit-scope.integration.spec.ts#shows the Atlanta officer only the Atlanta dues line,services-membership:modules/memberships/tests/integration/services/unit-scope.integration.spec.ts#answers the export to the person who asked for it and to staff, and not to another officer
05Check member visibility before exposing version conflictsregressionproposed