Skip to content

Commit d4c6b34

Browse files
committed
gh-41 Add ACR API test feature
1 parent a95be23 commit d4c6b34

File tree

6 files changed

+446
-20
lines changed

6 files changed

+446
-20
lines changed

tests/Integration.Test/Common/DicomExtensions.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,8 @@ namespace Monai.Deploy.InformaticsGateway.Integration.Test.Common
2020
{
2121
internal static class DicomExtensions
2222
{
23-
public static string GenerateFileName(this DicomFile dicomFile) => $"{dicomFile.Dataset.GetString(DicomTag.PatientID)}-{dicomFile.Dataset.GetString(DicomTag.SOPInstanceUID)}.dcm";
23+
public static string GenerateFileName(this DicomFile dicomFile) => GenerateFileName(dicomFile.Dataset);
24+
public static string GenerateFileName(this DicomDataset dicomDataset) => $"{dicomDataset.GetString(DicomTag.PatientID)}-{dicomDataset.GetString(DicomTag.SOPInstanceUID)}.dcm";
2425

2526
public static string CalculateHash(this DicomFile dicomFile)
2627
{

tests/Integration.Test/Drivers/Configurations.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,9 +100,9 @@ private void LoadConfiguration()
100100
_outputHelper.WriteLine("Storage Service Host/IP = {0}", StorageServiceOptions.Host);
101101
if (OrthancOptions.Host == "$HOST_IP")
102102
{
103-
StorageServiceOptions.Host = hostIp;
103+
OrthancOptions.Host = hostIp;
104104
}
105-
_outputHelper.WriteLine("Orthanc Host/IP = {0}", StorageServiceOptions.Host);
105+
_outputHelper.WriteLine("Orthanc Host/IP = {0}", OrthancOptions.Host);
106106
if (OrthancOptions.DicomWebRoot.Contains("$HOST_IP"))
107107
{
108108
OrthancOptions.DicomWebRoot = OrthancOptions.DicomWebRoot.Replace("$HOST_IP", hostIp);
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# Copyright 2022 MONAI Consortium
2+
# Licensed under the Apache License, Version 2.0 (the "License");
3+
# you may not use this file except in compliance with the License.
4+
# You may obtain a copy of the License at
5+
# http://www.apache.org/licenses/LICENSE-2.0
6+
# Unless required by applicable law or agreed to in writing, software
7+
# distributed under the License is distributed on an "AS IS" BASIS,
8+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9+
# See the License for the specific language governing permissions and
10+
# limitations under the License.
11+
12+
Feature: ACR API
13+
14+
This feature tests the DIMSE services provided by the Informatics Gateway as a SCP.
15+
Requirements covered:
16+
- [REQ-DCW-01] MIG SHALL be able to query DICOMweb services (QIDO-RS)
17+
- [REQ-DCW-02] MIG SHALL be able to retrieve from DICOMweb services via WADO-RS
18+
- [REQ-EHR-01] MIG SHALL be able to retrieve FHIR resources
19+
- [REQ-INF-01] MIG SHALL allow users to trigger jobs via standard APIs
20+
21+
22+
@messaging_workflow_request @messaging
23+
Scenario: ACR w/ DICOMweb Q&R
24+
Given a DICOM study on a remote DICOMweb service
25+
And an ACR API request to query & retrieve by <requestType>
26+
When the ACR API request is sent
27+
Then a workflow requests sent to the message broker
28+
And a study is uploaded to the storage service
29+
And the temporary data directory is cleared
30+
31+
Examples:
32+
| requestType |
33+
| Study |
34+
| Patient |
35+
| AccessionNumber |

tests/Integration.Test/Features/AcrApi.feature.cs

Lines changed: 169 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)