comparison UnitTestsSources/DicomMapTests.cpp @ 3006:0e1755e5efd0

DicomMap::ExtractMainDicomTags()
author Sebastien Jodogne <s.jodogne@gmail.com>
date Thu, 13 Dec 2018 12:37:10 +0100
parents 8265a6b56100
children abe49ca61cd5
comparison
equal deleted inserted replaced
3005:8265a6b56100 3006:0e1755e5efd0
502 502
503 //dicom.SaveToFile("/tmp/test.dcm"); 503 //dicom.SaveToFile("/tmp/test.dcm");
504 //std::cout << toStore.GetJson() << std::endl; 504 //std::cout << toStore.GetJson() << std::endl;
505 //a.Print(stdout); 505 //a.Print(stdout);
506 } 506 }
507
508
509
510 TEST(DicomMap, ExtractMainDicomTags)
511 {
512 DicomMap b;
513 b.SetValue(DICOM_TAG_PATIENT_NAME, "E", false);
514
515 {
516 DicomMap a;
517 a.SetValue(DICOM_TAG_PATIENT_NAME, "A", false);
518 a.SetValue(DICOM_TAG_STUDY_DESCRIPTION, "B", false);
519 a.SetValue(DICOM_TAG_SERIES_DESCRIPTION, "C", false);
520 a.SetValue(DICOM_TAG_NUMBER_OF_FRAMES, "D", false);
521 a.SetValue(DICOM_TAG_SLICE_THICKNESS, "F", false);
522 b.ExtractMainDicomTags(a);
523 }
524
525 ASSERT_EQ(4u, b.GetSize());
526 ASSERT_EQ("A", b.GetValue(DICOM_TAG_PATIENT_NAME).GetContent());
527 ASSERT_EQ("B", b.GetValue(DICOM_TAG_STUDY_DESCRIPTION).GetContent());
528 ASSERT_EQ("C", b.GetValue(DICOM_TAG_SERIES_DESCRIPTION).GetContent());
529 ASSERT_EQ("D", b.GetValue(DICOM_TAG_NUMBER_OF_FRAMES).GetContent());
530 ASSERT_FALSE(b.HasTag(DICOM_TAG_SLICE_THICKNESS));
531
532 b.SetValue(DICOM_TAG_PATIENT_NAME, "G", false);
533
534 {
535 DicomMap a;
536 a.SetValue(DICOM_TAG_PATIENT_NAME, "A", false);
537 a.SetValue(DICOM_TAG_SLICE_THICKNESS, "F", false);
538 b.Merge(a);
539 }
540
541 ASSERT_EQ(5u, b.GetSize());
542 ASSERT_EQ("G", b.GetValue(DICOM_TAG_PATIENT_NAME).GetContent());
543 ASSERT_EQ("B", b.GetValue(DICOM_TAG_STUDY_DESCRIPTION).GetContent());
544 ASSERT_EQ("C", b.GetValue(DICOM_TAG_SERIES_DESCRIPTION).GetContent());
545 ASSERT_EQ("D", b.GetValue(DICOM_TAG_NUMBER_OF_FRAMES).GetContent());
546 ASSERT_EQ("F", b.GetValue(DICOM_TAG_SLICE_THICKNESS).GetContent());
547 }