Mercurial > hg > orthanc
comparison OrthancFramework/UnitTestsSources/DicomMapTests.cpp @ 5179:1e406c23b352
added unit test DicomMap.SetupFindTemplates
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Sat, 25 Mar 2023 11:11:11 +0100 |
parents | 6d8647122ef3 |
children | d2626a062809 |
comparison
equal
deleted
inserted
replaced
5178:02c7e4aa7946 | 5179:1e406c23b352 |
---|---|
1061 tags["0028,0034"] = "1\\1"; // PixelAspectRatio | 1061 tags["0028,0034"] = "1\\1"; // PixelAspectRatio |
1062 tags["0028,1101"] = "256\\0\\16"; // RedPaletteColorLookupTableDescriptor which is declared as xs VR in dicom.dic | 1062 tags["0028,1101"] = "256\\0\\16"; // RedPaletteColorLookupTableDescriptor which is declared as xs VR in dicom.dic |
1063 | 1063 |
1064 std::unique_ptr<ParsedDicomFile> dicom(ParsedDicomFile::CreateFromJson(tags, DicomFromJsonFlags_DecodeDataUriScheme, "")); | 1064 std::unique_ptr<ParsedDicomFile> dicom(ParsedDicomFile::CreateFromJson(tags, DicomFromJsonFlags_DecodeDataUriScheme, "")); |
1065 // simply make sure it does not throw ! | 1065 // simply make sure it does not throw ! |
1066 } | |
1067 | |
1068 | |
1069 TEST(DicomMap, SetupFindTemplates) | |
1070 { | |
1071 /** | |
1072 * The templates for C-FIND must be common to all the Orthanc | |
1073 * servers, and must not be altered by the "ExtraMainDicomTags" | |
1074 * configuration option that was introduced in Orthanc 1.11.0. | |
1075 **/ | |
1076 | |
1077 { | |
1078 DicomMap m; | |
1079 DicomMap::SetupFindPatientTemplate(m); | |
1080 std::set<DicomTag> tags; | |
1081 m.GetTags(tags); | |
1082 | |
1083 // This corresponds to the values of DEFAULT_PATIENT_MAIN_DICOM_TAGS | |
1084 ASSERT_EQ(5u, tags.size()); | |
1085 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_PATIENT_ID, "nope", false)); | |
1086 | |
1087 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_OTHER_PATIENT_IDS, "nope", false)); | |
1088 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_PATIENT_BIRTH_DATE, "nope", false)); | |
1089 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_PATIENT_NAME, "nope", false)); | |
1090 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_PATIENT_SEX, "nope", false)); | |
1091 } | |
1092 | |
1093 { | |
1094 DicomMap m; | |
1095 DicomMap::SetupFindStudyTemplate(m); | |
1096 std::set<DicomTag> tags; | |
1097 m.GetTags(tags); | |
1098 | |
1099 // This corresponds to the values of DEFAULT_STUDY_MAIN_DICOM_TAGS | |
1100 ASSERT_EQ(8u, tags.size()); | |
1101 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_PATIENT_ID, "nope", false)); | |
1102 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_ACCESSION_NUMBER, "nope", false)); | |
1103 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_STUDY_INSTANCE_UID, "nope", false)); | |
1104 | |
1105 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_REFERRING_PHYSICIAN_NAME, "nope", false)); | |
1106 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_STUDY_DATE, "nope", false)); | |
1107 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_STUDY_DESCRIPTION, "nope", false)); | |
1108 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_STUDY_ID, "nope", false)); | |
1109 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_STUDY_TIME, "nope", false)); | |
1110 } | |
1111 | |
1112 { | |
1113 DicomMap m; | |
1114 DicomMap::SetupFindSeriesTemplate(m); | |
1115 std::set<DicomTag> tags; | |
1116 m.GetTags(tags); | |
1117 | |
1118 // This corresponds to the values of DEFAULT_SERIES_MAIN_DICOM_TAGS | |
1119 ASSERT_EQ(13u, tags.size()); | |
1120 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_PATIENT_ID, "nope", false)); | |
1121 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_ACCESSION_NUMBER, "nope", false)); | |
1122 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_STUDY_INSTANCE_UID, "nope", false)); | |
1123 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_SERIES_INSTANCE_UID, "nope", false)); | |
1124 | |
1125 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_BODY_PART_EXAMINED, "nope", false)); | |
1126 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_MODALITY, "nope", false)); | |
1127 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_OPERATOR_NAME, "nope", false)); | |
1128 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_PERFORMED_PROCEDURE_STEP_DESCRIPTION, "nope", false)); | |
1129 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_PROTOCOL_NAME, "nope", false)); | |
1130 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_SERIES_DATE, "nope", false)); | |
1131 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_SERIES_DESCRIPTION, "nope", false)); | |
1132 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_SERIES_NUMBER, "nope", false)); | |
1133 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_SERIES_TIME, "nope", false)); | |
1134 } | |
1135 | |
1136 { | |
1137 DicomMap m; | |
1138 DicomMap::SetupFindInstanceTemplate(m); | |
1139 std::set<DicomTag> tags; | |
1140 m.GetTags(tags); | |
1141 | |
1142 // This corresponds to the values of DEFAULT_INSTANCE_MAIN_DICOM_TAGS | |
1143 ASSERT_EQ(15u, tags.size()); | |
1144 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_PATIENT_ID, "nope", false)); | |
1145 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_ACCESSION_NUMBER, "nope", false)); | |
1146 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_STUDY_INSTANCE_UID, "nope", false)); | |
1147 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_SERIES_INSTANCE_UID, "nope", false)); | |
1148 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_SOP_INSTANCE_UID, "nope", false)); | |
1149 | |
1150 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_ACQUISITION_NUMBER, "nope", false)); | |
1151 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_IMAGE_COMMENTS, "nope", false)); | |
1152 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_IMAGE_INDEX, "nope", false)); | |
1153 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_IMAGE_ORIENTATION_PATIENT, "nope", false)); | |
1154 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_IMAGE_POSITION_PATIENT, "nope", false)); | |
1155 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_INSTANCE_CREATION_DATE, "nope", false)); | |
1156 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_INSTANCE_CREATION_TIME, "nope", false)); | |
1157 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_INSTANCE_NUMBER, "nope", false)); | |
1158 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_NUMBER_OF_FRAMES, "nope", false)); | |
1159 ASSERT_EQ("", m.GetStringValue(DICOM_TAG_TEMPORAL_POSITION_IDENTIFIER, "nope", false)); | |
1160 } | |
1066 } | 1161 } |
1067 | 1162 |
1068 | 1163 |
1069 #if ORTHANC_SANDBOXED != 1 | 1164 #if ORTHANC_SANDBOXED != 1 |
1070 | 1165 |