Mercurial > hg > orthanc
comparison OrthancFramework/UnitTestsSources/FromDcmtkTests.cpp @ 4696:dd6274412ff4
new configuration option "ExternalDictionaries" to load external DICOM dictionaries
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 17 Jun 2021 15:47:21 +0200 |
parents | 45bce660ce3a |
children | 863383e7e582 |
comparison
equal
deleted
inserted
replaced
4695:651f069c7f77 | 4696:dd6274412ff4 |
---|---|
698 | 698 |
699 TEST(ParsedDicomFile, FromJson) | 699 TEST(ParsedDicomFile, FromJson) |
700 { | 700 { |
701 FromDcmtkBridge::RegisterDictionaryTag(DicomTag(0x7057, 0x1000), ValueRepresentation_OtherByte, "MyPrivateTag2", 1, 1, "ORTHANC"); | 701 FromDcmtkBridge::RegisterDictionaryTag(DicomTag(0x7057, 0x1000), ValueRepresentation_OtherByte, "MyPrivateTag2", 1, 1, "ORTHANC"); |
702 FromDcmtkBridge::RegisterDictionaryTag(DicomTag(0x7059, 0x1000), ValueRepresentation_OtherByte, "MyPrivateTag3", 1, 1, ""); | 702 FromDcmtkBridge::RegisterDictionaryTag(DicomTag(0x7059, 0x1000), ValueRepresentation_OtherByte, "MyPrivateTag3", 1, 1, ""); |
703 FromDcmtkBridge::RegisterDictionaryTag(DicomTag(0x7050, 0x1000), ValueRepresentation_PersonName, "Declared public tag2", 1, 1, ""); | 703 FromDcmtkBridge::RegisterDictionaryTag(DicomTag(0x7050, 0x1002), ValueRepresentation_PersonName, "Declared public tag2", 1, 1, ""); |
704 | 704 |
705 Json::Value v; | 705 Json::Value v; |
706 const std::string sopClassUid = "1.2.840.10008.5.1.4.1.1.1"; // CR Image Storage: | 706 const std::string sopClassUid = "1.2.840.10008.5.1.4.1.1.1"; // CR Image Storage: |
707 | 707 |
708 // Test the private creator | 708 // Test the private creator |
711 | 711 |
712 { | 712 { |
713 v["SOPClassUID"] = sopClassUid; | 713 v["SOPClassUID"] = sopClassUid; |
714 v["SpecificCharacterSet"] = "ISO_IR 148"; // This is latin-5 | 714 v["SpecificCharacterSet"] = "ISO_IR 148"; // This is latin-5 |
715 v["PatientName"] = "Sébastien"; | 715 v["PatientName"] = "Sébastien"; |
716 v["7050-1000"] = "Some public tag"; // Even group => public tag | 716 v["7050-1002"] = "Some public tag"; // Even group => public tag |
717 v["7052-1000"] = "Some unknown tag"; // Even group => public, unknown tag | 717 v["7052-1000"] = "Some unknown tag"; // Even group => public, unknown tag |
718 v["7057-1000"] = "Some private tag"; // Odd group => private tag | 718 v["7057-1000"] = "Some private tag"; // Odd group => private tag |
719 v["7059-1000"] = "Some private tag2"; // Odd group => private tag, with an odd length to test padding | 719 v["7059-1000"] = "Some private tag2"; // Odd group => private tag, with an odd length to test padding |
720 | 720 |
721 std::string s; | 721 std::string s; |
782 ASSERT_FALSE(vv.isMember("StudyInstanceUID")); | 782 ASSERT_FALSE(vv.isMember("StudyInstanceUID")); |
783 ASSERT_FALSE(vv.isMember("PatientID")); | 783 ASSERT_FALSE(vv.isMember("PatientID")); |
784 ASSERT_EQ(2u, vv["0040,0100"].size()); | 784 ASSERT_EQ(2u, vv["0040,0100"].size()); |
785 ASSERT_EQ("MR", vv["0040,0100"][0]["0008,0060"].asString()); | 785 ASSERT_EQ("MR", vv["0040,0100"][0]["0008,0060"].asString()); |
786 ASSERT_EQ("CT", vv["0040,0100"][1]["0008,0060"].asString()); | 786 ASSERT_EQ("CT", vv["0040,0100"][1]["0008,0060"].asString()); |
787 ASSERT_EQ("Some public tag", vv["7050,1000"].asString()); | 787 ASSERT_EQ("Some public tag", vv["7050,1002"].asString()); |
788 ASSERT_EQ("Some unknown tag", vv["7052,1000"].asString()); | 788 ASSERT_EQ("Some unknown tag", vv["7052,1000"].asString()); |
789 ASSERT_EQ("Some private tag", vv["7057,1000"].asString()); | 789 ASSERT_EQ("Some private tag", vv["7057,1000"].asString()); |
790 ASSERT_EQ("Some private tag2", vv["7059,1000"].asString()); | 790 ASSERT_EQ("Some private tag2", vv["7059,1000"].asString()); |
791 ASSERT_EQ("Sébastien", vv["0010,0010"].asString()); | 791 ASSERT_EQ("Sébastien", vv["0010,0010"].asString()); |
792 ASSERT_EQ("Sebastien", vv["0008,1030"].asString()); | 792 ASSERT_EQ("Sebastien", vv["0008,1030"].asString()); |