Mercurial > hg > orthanc-stone
comparison UnitTestsSources/SortedFramesTests.cpp @ 1601:1704341bb96e
fix
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 28 Oct 2020 15:46:25 +0100 |
parents | 73cd85d7da6a |
children | b2941196cabf |
comparison
equal
deleted
inserted
replaced
1600:b253b79906fa | 1601:1704341bb96e |
---|---|
37 ASSERT_TRUE(f.IsSorted()); | 37 ASSERT_TRUE(f.IsSorted()); |
38 ASSERT_EQ(0u, f.GetFramesCount()); | 38 ASSERT_EQ(0u, f.GetFramesCount()); |
39 ASSERT_THROW(f.GetFrameTags(0), Orthanc::OrthancException); | 39 ASSERT_THROW(f.GetFrameTags(0), Orthanc::OrthancException); |
40 ASSERT_THROW(f.GetFrameSopInstanceUid(0), Orthanc::OrthancException); | 40 ASSERT_THROW(f.GetFrameSopInstanceUid(0), Orthanc::OrthancException); |
41 ASSERT_THROW(f.GetFrameSiblingsCount(0), Orthanc::OrthancException); | 41 ASSERT_THROW(f.GetFrameSiblingsCount(0), Orthanc::OrthancException); |
42 ASSERT_THROW(f.GetFrameIndex(0), Orthanc::OrthancException); | 42 ASSERT_THROW(f.GetFrameNumberInInstance(0), Orthanc::OrthancException); |
43 | 43 |
44 Orthanc::DicomMap tags; | 44 Orthanc::DicomMap tags; |
45 ASSERT_THROW(f.AddInstance(tags), Orthanc::OrthancException); | 45 ASSERT_THROW(f.AddInstance(tags), Orthanc::OrthancException); |
46 tags.SetValue(Orthanc::DICOM_TAG_STUDY_INSTANCE_UID, "study", false); | 46 tags.SetValue(Orthanc::DICOM_TAG_STUDY_INSTANCE_UID, "study", false); |
47 ASSERT_THROW(f.AddInstance(tags), Orthanc::OrthancException); | 47 ASSERT_THROW(f.AddInstance(tags), Orthanc::OrthancException); |
60 ASSERT_FALSE(f.IsSorted()); | 60 ASSERT_FALSE(f.IsSorted()); |
61 ASSERT_THROW(f.GetFramesCount(), Orthanc::OrthancException); | 61 ASSERT_THROW(f.GetFramesCount(), Orthanc::OrthancException); |
62 ASSERT_THROW(f.GetFrameTags(0), Orthanc::OrthancException); | 62 ASSERT_THROW(f.GetFrameTags(0), Orthanc::OrthancException); |
63 ASSERT_THROW(f.GetFrameSopInstanceUid(0), Orthanc::OrthancException); | 63 ASSERT_THROW(f.GetFrameSopInstanceUid(0), Orthanc::OrthancException); |
64 ASSERT_THROW(f.GetFrameSiblingsCount(0), Orthanc::OrthancException); | 64 ASSERT_THROW(f.GetFrameSiblingsCount(0), Orthanc::OrthancException); |
65 ASSERT_THROW(f.GetFrameIndex(0), Orthanc::OrthancException); | 65 ASSERT_THROW(f.GetFrameNumberInInstance(0), Orthanc::OrthancException); |
66 | 66 |
67 f.Sort(); | 67 f.Sort(); |
68 ASSERT_TRUE(f.IsSorted()); | 68 ASSERT_TRUE(f.IsSorted()); |
69 ASSERT_EQ(1u, f.GetFramesCount()); | 69 ASSERT_EQ(1u, f.GetFramesCount()); |
70 ASSERT_TRUE(f.GetFrameTags(0).LookupStringValue(s, Orthanc::DICOM_TAG_SOP_INSTANCE_UID, false)); | 70 ASSERT_TRUE(f.GetFrameTags(0).LookupStringValue(s, Orthanc::DICOM_TAG_SOP_INSTANCE_UID, false)); |
71 ASSERT_EQ("sop", s); | 71 ASSERT_EQ("sop", s); |
72 ASSERT_EQ("sop", f.GetFrameSopInstanceUid(0)); | 72 ASSERT_EQ("sop", f.GetFrameSopInstanceUid(0)); |
73 ASSERT_EQ(1u, f.GetFrameSiblingsCount(0)); | 73 ASSERT_EQ(1u, f.GetFrameSiblingsCount(0)); |
74 ASSERT_EQ(0u, f.GetFrameIndex(0)); | 74 ASSERT_EQ(0u, f.GetFrameNumberInInstance(0)); |
75 ASSERT_THROW(f.GetFrameTags(1), Orthanc::OrthancException); | 75 ASSERT_THROW(f.GetFrameTags(1), Orthanc::OrthancException); |
76 } | 76 } |
77 | 77 |
78 | 78 |
79 TEST(SortedFrames, SortSopInstanceUid) | 79 TEST(SortedFrames, SortSopInstanceUid) |
103 ASSERT_EQ(3u, f.GetInstancesCount()); | 103 ASSERT_EQ(3u, f.GetInstancesCount()); |
104 ASSERT_EQ("sop3", f.GetSopInstanceUid(0)); | 104 ASSERT_EQ("sop3", f.GetSopInstanceUid(0)); |
105 ASSERT_EQ("sop1", f.GetSopInstanceUid(1)); | 105 ASSERT_EQ("sop1", f.GetSopInstanceUid(1)); |
106 ASSERT_EQ("sop2", f.GetSopInstanceUid(2)); | 106 ASSERT_EQ("sop2", f.GetSopInstanceUid(2)); |
107 ASSERT_EQ(6u, f.GetFramesCount()); | 107 ASSERT_EQ(6u, f.GetFramesCount()); |
108 ASSERT_EQ("sop1", f.GetFrameSopInstanceUid(0)); ASSERT_EQ(0u, f.GetFrameIndex(0)); | 108 ASSERT_EQ("sop1", f.GetFrameSopInstanceUid(0)); ASSERT_EQ(0u, f.GetFrameNumberInInstance(0)); |
109 ASSERT_EQ("sop1", f.GetFrameSopInstanceUid(1)); ASSERT_EQ(1u, f.GetFrameIndex(1)); | 109 ASSERT_EQ("sop1", f.GetFrameSopInstanceUid(1)); ASSERT_EQ(1u, f.GetFrameNumberInInstance(1)); |
110 ASSERT_EQ("sop1", f.GetFrameSopInstanceUid(2)); ASSERT_EQ(2u, f.GetFrameIndex(2)); | 110 ASSERT_EQ("sop1", f.GetFrameSopInstanceUid(2)); ASSERT_EQ(2u, f.GetFrameNumberInInstance(2)); |
111 ASSERT_EQ("sop2", f.GetFrameSopInstanceUid(3)); ASSERT_EQ(0u, f.GetFrameIndex(3)); | 111 ASSERT_EQ("sop2", f.GetFrameSopInstanceUid(3)); ASSERT_EQ(0u, f.GetFrameNumberInInstance(3)); |
112 ASSERT_EQ("sop2", f.GetFrameSopInstanceUid(4)); ASSERT_EQ(1u, f.GetFrameIndex(4)); | 112 ASSERT_EQ("sop2", f.GetFrameSopInstanceUid(4)); ASSERT_EQ(1u, f.GetFrameNumberInInstance(4)); |
113 ASSERT_EQ("sop3", f.GetFrameSopInstanceUid(5)); ASSERT_EQ(0u, f.GetFrameIndex(5)); | 113 ASSERT_EQ("sop3", f.GetFrameSopInstanceUid(5)); ASSERT_EQ(0u, f.GetFrameNumberInInstance(5)); |
114 | 114 |
115 // The instances must not have been reordered, only the frames | 115 // The instances must not have been reordered, only the frames |
116 ASSERT_TRUE(f.LookupSopInstanceUid(i, "sop1")); ASSERT_EQ(1u, i); | 116 ASSERT_TRUE(f.LookupSopInstanceUid(i, "sop1")); ASSERT_EQ(1u, i); |
117 ASSERT_TRUE(f.LookupSopInstanceUid(i, "sop2")); ASSERT_EQ(2u, i); | 117 ASSERT_TRUE(f.LookupSopInstanceUid(i, "sop2")); ASSERT_EQ(2u, i); |
118 ASSERT_TRUE(f.LookupSopInstanceUid(i, "sop3")); ASSERT_EQ(0u, i); | 118 ASSERT_TRUE(f.LookupSopInstanceUid(i, "sop3")); ASSERT_EQ(0u, i); |
153 ASSERT_EQ("sop2a", f.GetSopInstanceUid(2)); | 153 ASSERT_EQ("sop2a", f.GetSopInstanceUid(2)); |
154 ASSERT_EQ("sop4", f.GetSopInstanceUid(3)); | 154 ASSERT_EQ("sop4", f.GetSopInstanceUid(3)); |
155 ASSERT_EQ("sop3", f.GetSopInstanceUid(4)); | 155 ASSERT_EQ("sop3", f.GetSopInstanceUid(4)); |
156 ASSERT_EQ("sop5", f.GetSopInstanceUid(5)); | 156 ASSERT_EQ("sop5", f.GetSopInstanceUid(5)); |
157 ASSERT_EQ(6u, f.GetFramesCount()); | 157 ASSERT_EQ(6u, f.GetFramesCount()); |
158 ASSERT_EQ("sop2", f.GetFrameSopInstanceUid(0)); ASSERT_EQ(0u, f.GetFrameIndex(0)); | 158 ASSERT_EQ("sop2", f.GetFrameSopInstanceUid(0)); ASSERT_EQ(0u, f.GetFrameNumberInInstance(0)); |
159 ASSERT_EQ("sop3", f.GetFrameSopInstanceUid(1)); ASSERT_EQ(0u, f.GetFrameIndex(1)); | 159 ASSERT_EQ("sop3", f.GetFrameSopInstanceUid(1)); ASSERT_EQ(0u, f.GetFrameNumberInInstance(1)); |
160 ASSERT_EQ("sop4", f.GetFrameSopInstanceUid(2)); ASSERT_EQ(0u, f.GetFrameIndex(2)); | 160 ASSERT_EQ("sop4", f.GetFrameSopInstanceUid(2)); ASSERT_EQ(0u, f.GetFrameNumberInInstance(2)); |
161 ASSERT_EQ("sop5", f.GetFrameSopInstanceUid(3)); ASSERT_EQ(0u, f.GetFrameIndex(3)); | 161 ASSERT_EQ("sop5", f.GetFrameSopInstanceUid(3)); ASSERT_EQ(0u, f.GetFrameNumberInInstance(3)); |
162 ASSERT_EQ("sop1", f.GetFrameSopInstanceUid(4)); ASSERT_EQ(0u, f.GetFrameIndex(4)); | 162 ASSERT_EQ("sop1", f.GetFrameSopInstanceUid(4)); ASSERT_EQ(0u, f.GetFrameNumberInInstance(4)); |
163 ASSERT_EQ("sop2a", f.GetFrameSopInstanceUid(5)); ASSERT_EQ(0u, f.GetFrameIndex(5)); | 163 ASSERT_EQ("sop2a", f.GetFrameSopInstanceUid(5)); ASSERT_EQ(0u, f.GetFrameNumberInInstance(5)); |
164 } | 164 } |
165 | 165 |
166 | 166 |
167 TEST(SortedFrames, SortInstanceNumberAndImageIndex) | 167 TEST(SortedFrames, SortInstanceNumberAndImageIndex) |
168 { | 168 { |
192 ASSERT_EQ("sop2", f.GetSopInstanceUid(1)); | 192 ASSERT_EQ("sop2", f.GetSopInstanceUid(1)); |
193 ASSERT_EQ("sop3", f.GetSopInstanceUid(2)); | 193 ASSERT_EQ("sop3", f.GetSopInstanceUid(2)); |
194 ASSERT_EQ("sop4", f.GetSopInstanceUid(3)); | 194 ASSERT_EQ("sop4", f.GetSopInstanceUid(3)); |
195 ASSERT_EQ(4u, f.GetFramesCount()); | 195 ASSERT_EQ(4u, f.GetFramesCount()); |
196 // First instance number, then image index | 196 // First instance number, then image index |
197 ASSERT_EQ("sop1", f.GetFrameSopInstanceUid(0)); ASSERT_EQ(0u, f.GetFrameIndex(0)); | 197 ASSERT_EQ("sop1", f.GetFrameSopInstanceUid(0)); ASSERT_EQ(0u, f.GetFrameNumberInInstance(0)); |
198 ASSERT_EQ("sop4", f.GetFrameSopInstanceUid(1)); ASSERT_EQ(0u, f.GetFrameIndex(1)); | 198 ASSERT_EQ("sop4", f.GetFrameSopInstanceUid(1)); ASSERT_EQ(0u, f.GetFrameNumberInInstance(1)); |
199 ASSERT_EQ("sop2", f.GetFrameSopInstanceUid(2)); ASSERT_EQ(0u, f.GetFrameIndex(2)); | 199 ASSERT_EQ("sop2", f.GetFrameSopInstanceUid(2)); ASSERT_EQ(0u, f.GetFrameNumberInInstance(2)); |
200 ASSERT_EQ("sop3", f.GetFrameSopInstanceUid(3)); ASSERT_EQ(0u, f.GetFrameIndex(3)); | 200 ASSERT_EQ("sop3", f.GetFrameSopInstanceUid(3)); ASSERT_EQ(0u, f.GetFrameNumberInInstance(3)); |
201 } | 201 } |
202 | 202 |
203 | 203 |
204 TEST(SortedFrames, Knix) // Created using "SortedFramesCreateTest.py" | 204 TEST(SortedFrames, Knix) // Created using "SortedFramesCreateTest.py" |
205 { | 205 { |