-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #22 from vinodaravind01/main
docs: update test cases with SHINNY IG version 0.13.0
- Loading branch information
Showing
20 changed files
with
57,789 additions
and
2 deletions.
There are no files selected for viewing
2,426 changes: 2,426 additions & 0 deletions
2,426
...ion-test-prime/fhir-service-prime/src/2024-09-27/AHCHRSNQuestionnaireResponseExample.json
Large diffs are not rendered by default.
Oops, something went wrong.
2,490 changes: 2,490 additions & 0 deletions
2,490
...ression-test-prime/fhir-service-prime/src/2024-09-27/AHCHRSNScreeningResponseExample.json
Large diffs are not rendered by default.
Oops, something went wrong.
1,456 changes: 1,456 additions & 0 deletions
1,456
...g/regression-test-prime/fhir-service-prime/src/2024-09-27/NYScreeningResponseExample.json
Large diffs are not rendered by default.
Oops, something went wrong.
526 changes: 526 additions & 0 deletions
526
...t-prime/fhir-service-prime/src/2024-09-27/ObservationAssessmentFoodInsecurityExample.json
Large diffs are not rendered by default.
Oops, something went wrong.
74 changes: 74 additions & 0 deletions
74
...rsn/screening/regression-test-prime/fhir-service-prime/src/2024-09-27/README.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,74 @@ | ||
## Steps to test the .http files through CLI | ||
|
||
```bash | ||
$ npm install -g httpyac | ||
$ cd assurance/1115-waiver/ahc-hrsn/screening/regression-test-prime/fhir-service-prime/src/YYYY-MM-DD | ||
$ HOST=https://synthetic.fhir.api.devl.techbd.org httpyac send fhir-service.test.http --all | ||
``` | ||
|
||
For more complete example, see [regression-test.sh](../../../regression-test.sh) | ||
|
||
### `fhir-service.test.http` | ||
|
||
This is the REST-API execution file performs the actual test. It interacts | ||
with two primary API endpoints (`/Bundle/$validate` & `/Bundle/`) to ensure they are | ||
functioning as expected. | ||
|
||
#### Running httpYac tests in Postman | ||
|
||
For developers who prefer to use Postman for API testing and debugging, you can easily convert `fhir-service.test.http` httpYac file to Postman: | ||
|
||
- Open the `fhir-service.test.http` and familiarize yourself with the structure of the file. You will see sections defining HTTP requests, including HTTP methods (GET, POST, etc.), URLs, headers, and body content. | ||
- Open Postman and create a new collection. | ||
- Add a new request to the collection for each HTTP request defined in the `fhir-service.test.http` file: | ||
- Copy the method (GET, POST, etc.) from the httpYac file and set it in Postman. | ||
- Copy the URL from the httpYac file and paste it into the Postman request URL field. | ||
- **NOTE:** Pay attention to the header `X-TechBD-Tenant-ID: TECH_BD_FHIR_SERVICE_QE_IDENTIFIER`. When using your tool instead of HTTP YAC (e.g., Postman), ensure this header is passed correctly according to your API requirements. | ||
**Example:** | ||
- Key: `X-TechBD-Tenant-ID` | ||
- Value: `CommonTenant123` | ||
- Set the request headers in Postman by copying the headers from the httpYac file. Ensure each header key and value is correctly set. | ||
- If the request includes a body, copy the body content from the httpYac file and paste it into the Postman body section. Select the appropriate body type (e.g., raw, JSON, form-data). | ||
- Be sure to replace variables as necessary | ||
|
||
### `AHCHRSNQuestionnaireResponseExample.json` | ||
|
||
This JSON file contains sample data compliant with the implementation guidelines | ||
of our FHIR service. It is used within the .http tests to simulate valid data | ||
submission. | ||
|
||
### `AHCHRSNScreeningResponseExample.json` | ||
|
||
This JSON file contains sample data compliant with the implementation guidelines | ||
of our FHIR service. It is used within the .http tests to simulate valid data | ||
submission. | ||
|
||
### `NYScreeningResponseExample.json` | ||
|
||
This JSON file contains sample data compliant with the implementation guidelines | ||
of our FHIR service. It is used within the .http tests to simulate valid data | ||
submission. | ||
|
||
### `ServiceRequestExample.json` | ||
|
||
This JSON file contains sample data compliant with the implementation guidelines | ||
of our FHIR service. It is used within the .http tests to simulate valid data | ||
submission. | ||
|
||
### `TaskCompletedExample.json` | ||
|
||
This JSON file contains sample data compliant with the implementation guidelines | ||
of our FHIR service. It is used within the .http tests to simulate valid data | ||
submission. | ||
|
||
### `TaskExample.json` | ||
|
||
This JSON file contains sample data compliant with the implementation guidelines | ||
of our FHIR service. It is used within the .http tests to simulate valid data | ||
submission. | ||
|
||
### `TaskOutputProcedureExample.json` | ||
|
||
This JSON file contains sample data compliant with the implementation guidelines | ||
of our FHIR service. It is used within the .http tests to simulate valid data | ||
submission. |
859 changes: 859 additions & 0 deletions
859
...eening/regression-test-prime/fhir-service-prime/src/2024-09-27/ServiceRequestExample.json
Large diffs are not rendered by default.
Oops, something went wrong.
557 changes: 557 additions & 0 deletions
557
...reening/regression-test-prime/fhir-service-prime/src/2024-09-27/TaskCompletedExample.json
Large diffs are not rendered by default.
Oops, something went wrong.
470 changes: 470 additions & 0 deletions
470
...c-hrsn/screening/regression-test-prime/fhir-service-prime/src/2024-09-27/TaskExample.json
Large diffs are not rendered by default.
Oops, something went wrong.
572 changes: 572 additions & 0 deletions
572
...g/regression-test-prime/fhir-service-prime/src/2024-09-27/TaskOutputProcedureExample.json
Large diffs are not rendered by default.
Oops, something went wrong.
142 changes: 142 additions & 0 deletions
142
.../screening/regression-test-prime/fhir-service-prime/src/2024-09-27/fhir-service.test.http
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,142 @@ | ||
# this file is for testing and verifying the FHIR service with two api endpoints | ||
# ------------------------------------------------------------------------ | ||
# * requires the `vscode-httpyac` Visual Studio Code extension within IDE | ||
# or httpYac CLI when executing outside of the IDE | ||
# * this service has 2 endpoints /Bundle/$validate & /Bundle/ | ||
|
||
@hostName = http://localhost:8080 | ||
{{ | ||
// dotEnv is loaded by default so let's see if custom hostName is available; | ||
// if $HTTPYAC_HOST is available use it first otherwise use $HOST | ||
if(process.env.HOST) exports.hostName = process.env.HOST; | ||
if(process.env.HTTPYAC_HOST) exports.hostName = process.env.HTTPYAC_HOST; | ||
}} | ||
|
||
@contentType = application/json | ||
@contentTypeFHIR = application/fhir+json | ||
@TECH_BD_FHIR_SERVICE_QE_IDENTIFIER = QC-TEST | ||
|
||
|
||
### /metadata endpoint should return FHIR CapabilityStatement | ||
GET {{hostName}}/metadata | ||
Content-Type: {{contentType}} | ||
?? status == 200 | ||
?? header content-type == text/html;charset=UTF-8 | ||
?? response.body != null | ||
|
||
### /Bundle/$validate should validate AHCHRSNQuestionnaireResponseExample.json with Content-Type application/json | ||
POST {{hostName}}/Bundle/$validate HTTP/1.1 | ||
Content-Type: {{contentTypeFHIR}} | ||
X-TechBD-Tenant-ID: {{TECH_BD_FHIR_SERVICE_QE_IDENTIFIER}} | ||
?? status == 200 | ||
?? response.body != null | ||
?? js response.parsedBody.OperationOutcome.resourceType == OperationOutcome | ||
?? js response.parsedBody.OperationOutcome.validationResults[0].operationOutcome.issue[0].severity == error | ||
?? js response.parsedBody.OperationOutcome.validationResults[0].valid == false | ||
|
||
< AHCHRSNQuestionnaireResponseExample.json | ||
|
||
### /Bundle/$validate should validate AHCHRSNScreeningResponseExample.json with Content-Type application/json | ||
|
||
POST {{hostName}}/Bundle/$validate HTTP/1.1 | ||
Content-Type: {{contentTypeFHIR}} | ||
X-TechBD-Tenant-ID: {{TECH_BD_FHIR_SERVICE_QE_IDENTIFIER}} | ||
?? status == 200 | ||
?? response.body != null | ||
?? js response.parsedBody.OperationOutcome.resourceType == OperationOutcome | ||
?? js response.parsedBody.OperationOutcome.validationResults[0].operationOutcome.issue[0].severity == error | ||
?? js response.parsedBody.OperationOutcome.validationResults[0].valid == false | ||
|
||
< AHCHRSNScreeningResponseExample.json | ||
|
||
|
||
### /Bundle/$validate should validate NYScreeningResponseExample.json with Content-Type application/json | ||
|
||
POST {{hostName}}/Bundle/$validate HTTP/1.1 | ||
Content-Type: {{contentTypeFHIR}} | ||
X-TechBD-Tenant-ID: {{TECH_BD_FHIR_SERVICE_QE_IDENTIFIER}} | ||
?? status == 200 | ||
?? response.body != null | ||
?? js response.parsedBody.OperationOutcome.resourceType == OperationOutcome | ||
?? js response.parsedBody.OperationOutcome.validationResults[0].operationOutcome.issue[0].severity == error | ||
?? js response.parsedBody.OperationOutcome.validationResults[0].valid == false | ||
|
||
< NYScreeningResponseExample.json | ||
|
||
### /Bundle/$validate should validate ObservationAssessmentFoodInsecurityExample.json with Content-Type application/json | ||
|
||
POST {{hostName}}/Bundle/$validate HTTP/1.1 | ||
Content-Type: {{contentTypeFHIR}} | ||
X-TechBD-Tenant-ID: {{TECH_BD_FHIR_SERVICE_QE_IDENTIFIER}} | ||
?? status == 200 | ||
?? response.body != null | ||
?? js response.parsedBody.OperationOutcome.resourceType == OperationOutcome | ||
?? js response.parsedBody.OperationOutcome.validationResults[0].operationOutcome.issue[0].severity == error | ||
?? js response.parsedBody.OperationOutcome.validationResults[0].valid == false | ||
|
||
< ObservationAssessmentFoodInsecurityExample.json | ||
|
||
|
||
### /Bundle/$validate should validate ServiceRequestExample.json with Content-Type application/json | ||
|
||
POST {{hostName}}/Bundle/$validate HTTP/1.1 | ||
Content-Type: {{contentTypeFHIR}} | ||
X-TechBD-Tenant-ID: {{TECH_BD_FHIR_SERVICE_QE_IDENTIFIER}} | ||
?? status == 200 | ||
?? response.body != null | ||
?? js response.parsedBody.OperationOutcome.resourceType == OperationOutcome | ||
?? js response.parsedBody.OperationOutcome.validationResults[0].operationOutcome.issue[0].severity == error | ||
?? js response.parsedBody.OperationOutcome.validationResults[0].valid == false | ||
|
||
< ServiceRequestExample.json | ||
|
||
### /Bundle/$validate should validate TaskCompletedExample.json with Content-Type application/json | ||
|
||
POST {{hostName}}/Bundle/$validate HTTP/1.1 | ||
Content-Type: {{contentTypeFHIR}} | ||
X-TechBD-Tenant-ID: {{TECH_BD_FHIR_SERVICE_QE_IDENTIFIER}} | ||
?? status == 200 | ||
?? response.body != null | ||
?? js response.parsedBody.OperationOutcome.resourceType == OperationOutcome | ||
?? js response.parsedBody.OperationOutcome.validationResults[0].operationOutcome.issue[0].severity == error | ||
?? js response.parsedBody.OperationOutcome.validationResults[0].valid == false | ||
|
||
< TaskCompletedExample.json | ||
|
||
### /Bundle/$validate should validate TaskExample.json with Content-Type application/json | ||
|
||
POST {{hostName}}/Bundle/$validate HTTP/1.1 | ||
Content-Type: {{contentTypeFHIR}} | ||
X-TechBD-Tenant-ID: {{TECH_BD_FHIR_SERVICE_QE_IDENTIFIER}} | ||
?? status == 200 | ||
?? response.body != null | ||
?? js response.parsedBody.OperationOutcome.resourceType == OperationOutcome | ||
?? js response.parsedBody.OperationOutcome.validationResults[0].operationOutcome.issue[0].severity == error | ||
?? js response.parsedBody.OperationOutcome.validationResults[0].valid == false | ||
|
||
< TaskExample.json | ||
|
||
|
||
### /Bundle/$validate should validate TaskOutputProcedureExample.json with Content-Type application/json | ||
|
||
POST {{hostName}}/Bundle/$validate HTTP/1.1 | ||
Content-Type: {{contentTypeFHIR}} | ||
X-TechBD-Tenant-ID: {{TECH_BD_FHIR_SERVICE_QE_IDENTIFIER}} | ||
?? status == 200 | ||
?? response.body != null | ||
?? js response.parsedBody.OperationOutcome.resourceType == OperationOutcome | ||
?? js response.parsedBody.OperationOutcome.validationResults[0].operationOutcome.issue[0].severity == error | ||
?? js response.parsedBody.OperationOutcome.validationResults[0].valid == false | ||
|
||
< TaskOutputProcedureExample.json | ||
|
||
|
||
### Bundle should validate and submit TestServiceRequest.json as @TECH_BD_FHIR_SERVICE_QE_IDENTIFIER - with Content-Type application/fhir+json | ||
# DO NOT use any header variables which are not required by QEs | ||
POST {{hostName}}/Bundle HTTP/1.1 | ||
Content-Type: {{contentTypeFHIR}} | ||
X-TechBD-Tenant-ID: {{TECH_BD_FHIR_SERVICE_QE_IDENTIFIER}} | ||
?? status == 200 | ||
?? response.body != null | ||
|
||
< AHCHRSNQuestionnaireResponseExample.json |
Oops, something went wrong.