diff OrthancFramework/UnitTestsSources/DicomMapTests.cpp @ 5036:877bc3b96476

Handle Dicom sequences in ExtraMainDicomTags and save them in the 'MainDicomSequences' metadata
author Alain Mazy <am@osimis.io>
date Fri, 24 Jun 2022 15:47:10 +0200
parents f377d5643538
children 1c08cd68250a
line wrap: on
line diff
--- a/OrthancFramework/UnitTestsSources/DicomMapTests.cpp	Wed Jun 22 15:37:08 2022 +0200
+++ b/OrthancFramework/UnitTestsSources/DicomMapTests.cpp	Fri Jun 24 15:47:10 2022 +0200
@@ -169,6 +169,27 @@
 
 }
 
+TEST(DicomMap, ExtractSequences)
+{
+  std::set<DicomTag> allTags;
+  std::set<DicomTag> sequences;
+
+  // empty list
+  DicomMap::ExtractSequences(sequences, allTags);
+  ASSERT_EQ(0u, sequences.size());
+
+  // one tag, no sequence
+  allTags.insert(DICOM_TAG_PATIENT_NAME);
+  DicomMap::ExtractSequences(sequences, allTags);
+  ASSERT_EQ(0u, sequences.size());
+
+  // one sequence
+  allTags.insert(DICOM_TAG_REFERENCED_IMAGE_SEQUENCE);
+  DicomMap::ExtractSequences(sequences, allTags);
+  ASSERT_EQ(1u, sequences.size());
+  ASSERT_TRUE(sequences.find(DICOM_TAG_REFERENCED_IMAGE_SEQUENCE) != sequences.end());
+}
+
 TEST(DicomMap, Tags)
 {
   std::set<DicomTag> s;