comparison OrthancFramework/UnitTestsSources/DicomMapTests.cpp @ 4213:be2eca8b02e1

testing DicomMap::ParseDicomMetaInformation()
author Sebastien Jodogne <s.jodogne@gmail.com>
date Mon, 28 Sep 2020 15:23:04 +0200
parents bf7b9edf6b81
children 7b011cfda135
comparison
equal deleted inserted replaced
4212:cb3af14626d4 4213:be2eca8b02e1
648 ASSERT_EQ(main, name); 648 ASSERT_EQ(main, name);
649 } 649 }
650 } 650 }
651 } 651 }
652 } 652 }
653
654
655
656
657 #include "../Sources/SystemToolbox.h"
658
659 TEST(DicomMap, DISABLED_ParseDicomMetaInformation)
660 {
661 static const std::string PATH = "/home/jodogne/Subversion/orthanc-tests/Database/TransferSyntaxes/";
662
663 std::map<std::string, DicomTransferSyntax> f;
664 f.insert(std::make_pair(PATH + "../ColorTestMalaterre.dcm", DicomTransferSyntax_LittleEndianImplicit)); // 1.2.840.10008.1.2
665 f.insert(std::make_pair(PATH + "1.2.840.10008.1.2.1.dcm", DicomTransferSyntax_LittleEndianExplicit));
666 f.insert(std::make_pair(PATH + "1.2.840.10008.1.2.2.dcm", DicomTransferSyntax_BigEndianExplicit));
667 f.insert(std::make_pair(PATH + "1.2.840.10008.1.2.4.50.dcm", DicomTransferSyntax_JPEGProcess1));
668 f.insert(std::make_pair(PATH + "1.2.840.10008.1.2.4.51.dcm", DicomTransferSyntax_JPEGProcess2_4));
669 f.insert(std::make_pair(PATH + "1.2.840.10008.1.2.4.57.dcm", DicomTransferSyntax_JPEGProcess14));
670 f.insert(std::make_pair(PATH + "1.2.840.10008.1.2.4.70.dcm", DicomTransferSyntax_JPEGProcess14SV1));
671 f.insert(std::make_pair(PATH + "1.2.840.10008.1.2.4.80.dcm", DicomTransferSyntax_JPEGLSLossless));
672 f.insert(std::make_pair(PATH + "1.2.840.10008.1.2.4.81.dcm", DicomTransferSyntax_JPEGLSLossy));
673 f.insert(std::make_pair(PATH + "1.2.840.10008.1.2.4.90.dcm", DicomTransferSyntax_JPEG2000LosslessOnly));
674 f.insert(std::make_pair(PATH + "1.2.840.10008.1.2.4.91.dcm", DicomTransferSyntax_JPEG2000));
675 f.insert(std::make_pair(PATH + "1.2.840.10008.1.2.5.dcm", DicomTransferSyntax_RLELossless));
676
677 for (std::map<std::string, DicomTransferSyntax>::const_iterator it = f.begin(); it != f.end(); ++it)
678 {
679 printf("\n== %s ==\n\n", it->first.c_str());
680
681 std::string dicom;
682 SystemToolbox::ReadFile(dicom, it->first, false);
683
684 DicomMap d;
685 ASSERT_TRUE(DicomMap::ParseDicomMetaInformation(d, dicom.c_str(), dicom.size()));
686 d.Print(stdout);
687
688 std::string s;
689 ASSERT_TRUE(d.LookupStringValue(s, DICOM_TAG_TRANSFER_SYNTAX_UID, false));
690
691 DicomTransferSyntax ts;
692 ASSERT_TRUE(LookupTransferSyntax(ts, s));
693 ASSERT_EQ(ts, it->second);
694 }
695 }