comparison UnitTestsSources/FromDcmtkTests.cpp @ 1981:4b545a8b1f95

return code in Toolbox::DecodeDataUriScheme
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 22 Apr 2016 09:05:06 +0200
parents 869a87c08673
children b5d4f9c156ad
comparison
equal deleted inserted replaced
1980:ebce5f456b8e 1981:4b545a8b1f95
152 { 152 {
153 // Red dot in http://en.wikipedia.org/wiki/Data_URI_scheme (RGBA image) 153 // Red dot in http://en.wikipedia.org/wiki/Data_URI_scheme (RGBA image)
154 std::string s = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="; 154 std::string s = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==";
155 155
156 std::string m, cc; 156 std::string m, cc;
157 Toolbox::DecodeDataUriScheme(m, cc, s); 157 ASSERT_TRUE(Toolbox::DecodeDataUriScheme(m, cc, s));
158 158
159 ASSERT_EQ("image/png", m); 159 ASSERT_EQ("image/png", m);
160 160
161 PngReader reader; 161 PngReader reader;
162 reader.ReadFromMemory(cc); 162 reader.ReadFromMemory(cc);
564 ASSERT_TRUE(v.isMember("7050,1000")); 564 ASSERT_TRUE(v.isMember("7050,1000"));
565 ASSERT_TRUE(v.isMember("7053,1000")); 565 ASSERT_TRUE(v.isMember("7053,1000"));
566 ASSERT_EQ("Some public tag", v["7050,1000"].asString()); 566 ASSERT_EQ("Some public tag", v["7050,1000"].asString());
567 std::string mime, content; 567 std::string mime, content;
568 ASSERT_EQ(Json::stringValue, v["7053,1000"].type()); 568 ASSERT_EQ(Json::stringValue, v["7053,1000"].type());
569 Toolbox::DecodeDataUriScheme(mime, content, v["7053,1000"].asString()); 569 ASSERT_TRUE(Toolbox::DecodeDataUriScheme(mime, content, v["7053,1000"].asString()));
570 ASSERT_EQ("application/octet-stream", mime); 570 ASSERT_EQ("application/octet-stream", mime);
571 ASSERT_EQ("Some private tag", content); 571 ASSERT_EQ("Some private tag", content);
572 572
573 f.ToJson(v, DicomToJsonFormat_Short, static_cast<DicomToJsonFlags>(DicomToJsonFlags_IncludeUnknownTags | DicomToJsonFlags_ConvertBinaryToNull), 0); 573 f.ToJson(v, DicomToJsonFormat_Short, static_cast<DicomToJsonFlags>(DicomToJsonFlags_IncludeUnknownTags | DicomToJsonFlags_ConvertBinaryToNull), 0);
574 ASSERT_EQ(Json::objectValue, v.type()); 574 ASSERT_EQ(Json::objectValue, v.type());
585 ASSERT_TRUE(v.isMember("7050,1000")); 585 ASSERT_TRUE(v.isMember("7050,1000"));
586 ASSERT_TRUE(v.isMember("7052,1000")); 586 ASSERT_TRUE(v.isMember("7052,1000"));
587 ASSERT_FALSE(v.isMember("7053,1000")); 587 ASSERT_FALSE(v.isMember("7053,1000"));
588 ASSERT_EQ("Some public tag", v["7050,1000"].asString()); 588 ASSERT_EQ("Some public tag", v["7050,1000"].asString());
589 ASSERT_EQ(Json::stringValue, v["7052,1000"].type()); 589 ASSERT_EQ(Json::stringValue, v["7052,1000"].type());
590 Toolbox::DecodeDataUriScheme(mime, content, v["7052,1000"].asString()); 590 ASSERT_TRUE(Toolbox::DecodeDataUriScheme(mime, content, v["7052,1000"].asString()));
591 ASSERT_EQ("application/octet-stream", mime); 591 ASSERT_EQ("application/octet-stream", mime);
592 ASSERT_EQ("Some unknown tag", content); 592 ASSERT_EQ("Some unknown tag", content);
593 593
594 f.ToJson(v, DicomToJsonFormat_Short, static_cast<DicomToJsonFlags>(DicomToJsonFlags_IncludeUnknownTags | DicomToJsonFlags_IncludePrivateTags | DicomToJsonFlags_ConvertBinaryToNull), 0); 594 f.ToJson(v, DicomToJsonFormat_Short, static_cast<DicomToJsonFlags>(DicomToJsonFlags_IncludeUnknownTags | DicomToJsonFlags_IncludePrivateTags | DicomToJsonFlags_ConvertBinaryToNull), 0);
595 ASSERT_EQ(Json::objectValue, v.type()); 595 ASSERT_EQ(Json::objectValue, v.type());
631 ASSERT_EQ(Json::objectValue, v.type()); 631 ASSERT_EQ(Json::objectValue, v.type());
632 ASSERT_EQ(6u, v.getMemberNames().size()); 632 ASSERT_EQ(6u, v.getMemberNames().size());
633 ASSERT_TRUE(v.isMember("7fe0,0010")); 633 ASSERT_TRUE(v.isMember("7fe0,0010"));
634 ASSERT_EQ(Json::stringValue, v["7fe0,0010"].type()); 634 ASSERT_EQ(Json::stringValue, v["7fe0,0010"].type());
635 std::string mime, content; 635 std::string mime, content;
636 Toolbox::DecodeDataUriScheme(mime, content, v["7fe0,0010"].asString()); 636 ASSERT_TRUE(Toolbox::DecodeDataUriScheme(mime, content, v["7fe0,0010"].asString()));
637 ASSERT_EQ("application/octet-stream", mime); 637 ASSERT_EQ("application/octet-stream", mime);
638 ASSERT_EQ("Pixels", content); 638 ASSERT_EQ("Pixels", content);
639 } 639 }
640 640
641 641
731 731
732 Json::Value vv; 732 Json::Value vv;
733 dicom->ToJson(vv, DicomToJsonFormat_Human, static_cast<DicomToJsonFlags>(DicomToJsonFlags_IncludePixelData), 0); 733 dicom->ToJson(vv, DicomToJsonFormat_Human, static_cast<DicomToJsonFlags>(DicomToJsonFlags_IncludePixelData), 0);
734 734
735 std::string mime, content; 735 std::string mime, content;
736 Toolbox::DecodeDataUriScheme(mime, content, vv["PixelData"].asString()); 736 ASSERT_TRUE(Toolbox::DecodeDataUriScheme(mime, content, vv["PixelData"].asString()));
737 ASSERT_EQ("application/octet-stream", mime); 737 ASSERT_EQ("application/octet-stream", mime);
738 ASSERT_EQ(5u * 5u * 3u /* the red dot is 5x5 pixels in RGB24 */ + 1 /* for padding */, content.size()); 738 ASSERT_EQ(5u * 5u * 3u /* the red dot is 5x5 pixels in RGB24 */ + 1 /* for padding */, content.size());
739 } 739 }
740 740
741 741