comparison UnitTestsSources/FromDcmtkTests.cpp @ 3496:109631ed3564

DicomMap::FromDicomWeb()
author Sebastien Jodogne <s.jodogne@gmail.com>
date Wed, 21 Aug 2019 16:47:17 +0200
parents 0a0e7eca95ae
children a57c8163d9ae
comparison
equal deleted inserted replaced
3495:cc3e408165eb 3496:109631ed3564
1605 node = SelectNode(doc, "//NativeDicomModel/DicomAttribute[@tag=\"00100010\"]/PersonName/Phonetic/FamilyName"); 1605 node = SelectNode(doc, "//NativeDicomModel/DicomAttribute[@tag=\"00100010\"]/PersonName/Phonetic/FamilyName");
1606 ASSERT_EQ(utf8.substr(24, 3), node.node().text().as_string()); 1606 ASSERT_EQ(utf8.substr(24, 3), node.node().text().as_string());
1607 1607
1608 node = SelectNode(doc, "//NativeDicomModel/DicomAttribute[@tag=\"00100010\"]/PersonName/Phonetic/GivenName"); 1608 node = SelectNode(doc, "//NativeDicomModel/DicomAttribute[@tag=\"00100010\"]/PersonName/Phonetic/GivenName");
1609 ASSERT_EQ(utf8.substr(28), node.node().text().as_string()); 1609 ASSERT_EQ(utf8.substr(28), node.node().text().as_string());
1610 #endif 1610 #endif
1611
1612 {
1613 DicomMap m;
1614 m.FromDicomWeb(visitor.GetResult());
1615 ASSERT_EQ(2u, m.GetSize());
1616
1617 std::string s;
1618 ASSERT_TRUE(m.CopyToString(s, DICOM_TAG_SPECIFIC_CHARACTER_SET, false));
1619 ASSERT_EQ("ISO 2022 IR 149", s);
1620
1621 ASSERT_TRUE(m.CopyToString(s, DICOM_TAG_PATIENT_NAME, false));
1622 std::vector<std::string> v;
1623 Toolbox::TokenizeString(v, s, '=');
1624 ASSERT_EQ(3u, v.size());
1625 ASSERT_EQ("Hong^Gildong", v[0]);
1626 ASSERT_EQ(utf8, s);
1627 }
1611 } 1628 }
1612 1629
1613 1630
1614 TEST(Toolbox, EncodingsJapaneseKanji) 1631 TEST(Toolbox, EncodingsJapaneseKanji)
1615 { 1632 {
1686 ASSERT_EQ(utf8.substr(27, 9), node.node().text().as_string()); 1703 ASSERT_EQ(utf8.substr(27, 9), node.node().text().as_string());
1687 1704
1688 node = SelectNode(doc, "//NativeDicomModel/DicomAttribute[@tag=\"00100010\"]/PersonName/Phonetic/GivenName"); 1705 node = SelectNode(doc, "//NativeDicomModel/DicomAttribute[@tag=\"00100010\"]/PersonName/Phonetic/GivenName");
1689 ASSERT_EQ(utf8.substr(37), node.node().text().as_string()); 1706 ASSERT_EQ(utf8.substr(37), node.node().text().as_string());
1690 #endif 1707 #endif
1708
1709 {
1710 DicomMap m;
1711 m.FromDicomWeb(visitor.GetResult());
1712 ASSERT_EQ(2u, m.GetSize());
1713
1714 std::string s;
1715 ASSERT_TRUE(m.CopyToString(s, DICOM_TAG_SPECIFIC_CHARACTER_SET, false));
1716 ASSERT_EQ("ISO 2022 IR 87", s);
1717
1718 ASSERT_TRUE(m.CopyToString(s, DICOM_TAG_PATIENT_NAME, false));
1719 std::vector<std::string> v;
1720 Toolbox::TokenizeString(v, s, '=');
1721 ASSERT_EQ(3u, v.size());
1722 ASSERT_EQ("Yamada^Tarou", v[0]);
1723 ASSERT_EQ(utf8, s);
1724 }
1691 } 1725 }
1692 1726
1693 1727
1694 1728
1695 TEST(Toolbox, EncodingsChinese3) 1729 TEST(Toolbox, EncodingsChinese3)