diff OrthancFramework/UnitTestsSources/JobsTests.cpp @ 4687:fcd2dc7c8f31

"Replace", "Keep" and "Remove" in "/modify" and "/anonymize" accept paths to subsequences
author Sebastien Jodogne <s.jodogne@gmail.com>
date Wed, 09 Jun 2021 17:24:44 +0200
parents 82a314325351
children add0337b928a
line wrap: on
line diff
--- a/OrthancFramework/UnitTestsSources/JobsTests.cpp	Tue Jun 08 18:28:57 2021 +0200
+++ b/OrthancFramework/UnitTestsSources/JobsTests.cpp	Wed Jun 09 17:24:44 2021 +0200
@@ -1090,6 +1090,32 @@
 }
 
 
+TEST(JobsSerialization, DicomModification2)
+{   
+  Json::Value s;
+
+  {
+    DicomModification modification;
+    modification.SetupAnonymization(DicomVersion_2017c);
+    modification.Remove(DicomPath(DICOM_TAG_REFERENCED_IMAGE_SEQUENCE, 1, DICOM_TAG_SOP_INSTANCE_UID));
+    modification.Replace(DicomPath(DICOM_TAG_REFERENCED_IMAGE_SEQUENCE, 1, DICOM_TAG_SOP_CLASS_UID), "Hello", true);
+    modification.Keep(DicomPath(DICOM_TAG_REFERENCED_IMAGE_SEQUENCE, 1, DICOM_TAG_PATIENT_NAME));
+
+    s = 42;
+    modification.Serialize(s);
+  }
+
+  {
+    DicomModification modification(s);
+
+    // Check idempotent serialization
+    Json::Value ss;
+    modification.Serialize(ss);
+    ASSERT_EQ(s.toStyledString(), ss.toStyledString());
+  }
+}
+
+
 TEST(JobsSerialization, Registry)
 {   
   Json::Value s;