Skip to content

Commit 7f247d0

Browse files
Add search filter isolation scenarios
1 parent 4aa4ab3 commit 7f247d0

File tree

1 file changed

+97
-1
lines changed

1 file changed

+97
-1
lines changed

tests/features/consumer/searchDocumentReference-success.feature

Lines changed: 97 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ Feature: Consumer - searchDocumentReference - Success Scenarios
3636
| custodian | 02V |
3737
| author | 02V |
3838

39-
Scenario: Search for a DocumentReference by NHS Number and Custodian
39+
Scenario: Search for a DocumentReference by NHS Number and Custodian where both search parameters match
4040
Given the application 'DataShare' (ID 'z00z-y11y-x22x') is registered to access the API
4141
And the organisation 'RX898' is authorised to access pointer types:
4242
| system | value |
@@ -73,6 +73,102 @@ Feature: Consumer - searchDocumentReference - Success Scenarios
7373
| custodian | 02V |
7474
| author | 02V |
7575

76+
Scenario: Search for a DocumentReference by NHS Number and Custodian where Custodian filter matches one pointer from result set
77+
Given the application 'DataShare' (ID 'z00z-y11y-x22x') is registered to access the API
78+
And the organisation 'RX898' is authorised to access pointer types:
79+
| system | value |
80+
| http://snomed.info/sct | 736253002 |
81+
And a DocumentReference resource exists with values:
82+
| property | value |
83+
| id | 02V-1111111111-SearchDocRefTest |
84+
| subject | 9278693472 |
85+
| status | current |
86+
| type | 736253002 |
87+
| category | 734163000 |
88+
| contentType | application/pdf |
89+
| url | https://example.org/my-doc.pdf |
90+
| custodian | 02V |
91+
| author | 02V |
92+
And a DocumentReference resource exists with values:
93+
| property | value |
94+
| id | DK94-1111111112-SearchDocRefTest |
95+
| subject | 9278693472 |
96+
| status | current |
97+
| type | 736253002 |
98+
| category | 734163000 |
99+
| contentType | application/pdf |
100+
| url | https://example.org/my-doc.pdf |
101+
| custodian | DK94 |
102+
| author | DK94 |
103+
When consumer 'RX898' searches for DocumentReferences with parameters:
104+
| parameter | value |
105+
| subject | 9278693472 |
106+
| custodian | 02V |
107+
Then the response status code is 200
108+
And the response is a searchset Bundle
109+
And the Bundle has a self link matching 'DocumentReference?subject:identifier=https://fhir.nhs.uk/Id/nhs-number|9278693472&custodian:identifier=https://fhir.nhs.uk/Id/ods-organization-code|02V'
110+
And the Bundle has a total of 1
111+
And the Bundle has 1 entry
112+
And the Bundle contains an DocumentReference with values
113+
| property | value |
114+
| id | 02V-1111111111-SearchDocRefTest |
115+
| subject | 9278693472 |
116+
| status | current |
117+
| type | 736253002 |
118+
| category | 734163000 |
119+
| contentType | application/pdf |
120+
| url | https://example.org/my-doc.pdf |
121+
| custodian | 02V |
122+
| author | 02V |
123+
124+
Scenario: Search for a DocumentReference by NHS Number and Custodian where NHS number filter matches one pointer from result set
125+
Given the application 'DataShare' (ID 'z00z-y11y-x22x') is registered to access the API
126+
And the organisation 'RX898' is authorised to access pointer types:
127+
| system | value |
128+
| http://snomed.info/sct | 736253002 |
129+
And a DocumentReference resource exists with values:
130+
| property | value |
131+
| id | 02V-1111111111-SearchDocRefTest |
132+
| subject | 9278693472 |
133+
| status | current |
134+
| type | 736253002 |
135+
| category | 734163000 |
136+
| contentType | application/pdf |
137+
| url | https://example.org/my-doc.pdf |
138+
| custodian | 02V |
139+
| author | 02V |
140+
And a DocumentReference resource exists with values:
141+
| property | value |
142+
| id | 02V-1111111112-SearchDocRefTest |
143+
| subject | 9785146901 |
144+
| status | current |
145+
| type | 736253002 |
146+
| category | 734163000 |
147+
| contentType | application/pdf |
148+
| url | https://example.org/my-doc.pdf |
149+
| custodian | 02V |
150+
| author | 02V |
151+
When consumer 'RX898' searches for DocumentReferences with parameters:
152+
| parameter | value |
153+
| subject | 9278693472 |
154+
| custodian | 02V |
155+
Then the response status code is 200
156+
And the response is a searchset Bundle
157+
And the Bundle has a self link matching 'DocumentReference?subject:identifier=https://fhir.nhs.uk/Id/nhs-number|9278693472&custodian:identifier=https://fhir.nhs.uk/Id/ods-organization-code|02V'
158+
And the Bundle has a total of 1
159+
And the Bundle has 1 entry
160+
And the Bundle contains an DocumentReference with values
161+
| property | value |
162+
| id | 02V-1111111111-SearchDocRefTest |
163+
| subject | 9278693472 |
164+
| status | current |
165+
| type | 736253002 |
166+
| category | 734163000 |
167+
| contentType | application/pdf |
168+
| url | https://example.org/my-doc.pdf |
169+
| custodian | 02V |
170+
| author | 02V |
171+
76172
Scenario: Search for multiple DocumentReferences by NHS number
77173
Given the application 'DataShare' (ID 'z00z-y11y-x22x') is registered to access the API
78174
And the organisation 'RX898' is authorised to access pointer types:

0 commit comments

Comments
 (0)