Mercurial > hg > orthanc
diff UnitTestsSources/DicomMapTests.cpp @ 1360:0649c5aef34a
DicomFindQuery
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 15 May 2015 15:34:32 +0200 |
parents | 7b6925b0890d |
children | b22ba8c5edbe |
line wrap: on
line diff
--- a/UnitTestsSources/DicomMapTests.cpp Fri May 15 13:17:37 2015 +0200 +++ b/UnitTestsSources/DicomMapTests.cpp Fri May 15 15:34:32 2015 +0200 @@ -83,22 +83,38 @@ TEST(DicomMap, Tags) { + std::set<DicomTag> s; + DicomMap m; + m.GetTags(s); + ASSERT_EQ(0, s.size()); + ASSERT_FALSE(m.HasTag(DICOM_TAG_PATIENT_NAME)); ASSERT_FALSE(m.HasTag(0x0010, 0x0010)); m.SetValue(0x0010, 0x0010, "PatientName"); ASSERT_TRUE(m.HasTag(DICOM_TAG_PATIENT_NAME)); ASSERT_TRUE(m.HasTag(0x0010, 0x0010)); + m.GetTags(s); + ASSERT_EQ(1, s.size()); + ASSERT_EQ(DICOM_TAG_PATIENT_NAME, *s.begin()); + ASSERT_FALSE(m.HasTag(DICOM_TAG_PATIENT_ID)); m.SetValue(DICOM_TAG_PATIENT_ID, "PatientID"); ASSERT_TRUE(m.HasTag(0x0010, 0x0020)); m.SetValue(DICOM_TAG_PATIENT_ID, "PatientID2"); ASSERT_EQ("PatientID2", m.GetValue(0x0010, 0x0020).AsString()); + m.GetTags(s); + ASSERT_EQ(2, s.size()); + m.Remove(DICOM_TAG_PATIENT_ID); ASSERT_THROW(m.GetValue(0x0010, 0x0020), OrthancException); + m.GetTags(s); + ASSERT_EQ(1, s.size()); + ASSERT_EQ(DICOM_TAG_PATIENT_NAME, *s.begin()); + std::auto_ptr<DicomMap> mm(m.Clone()); ASSERT_EQ("PatientName", mm->GetValue(DICOM_TAG_PATIENT_NAME).AsString());