Mercurial > hg > orthanc
comparison UnitTests/ServerIndex.cpp @ 232:5368bbe813cf
refactoring of attachments
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 30 Nov 2012 14:22:27 +0100 |
parents | 0200cd330582 |
children | c11273198cef |
comparison
equal
deleted
inserted
replaced
231:8098448bd827 | 232:5368bbe813cf |
---|---|
63 | 63 |
64 { | 64 { |
65 Json::Value t; | 65 Json::Value t; |
66 index.GetAllPublicIds(t, ResourceType_Patient); | 66 index.GetAllPublicIds(t, ResourceType_Patient); |
67 | 67 |
68 ASSERT_EQ(1, t.size()); | 68 ASSERT_EQ(1u, t.size()); |
69 ASSERT_EQ("a", t[0u].asString()); | 69 ASSERT_EQ("a", t[0u].asString()); |
70 | 70 |
71 index.GetAllPublicIds(t, ResourceType_Series); | 71 index.GetAllPublicIds(t, ResourceType_Series); |
72 ASSERT_EQ(1, t.size()); | 72 ASSERT_EQ(1u, t.size()); |
73 ASSERT_EQ("c", t[0u].asString()); | 73 ASSERT_EQ("c", t[0u].asString()); |
74 | 74 |
75 index.GetAllPublicIds(t, ResourceType_Study); | 75 index.GetAllPublicIds(t, ResourceType_Study); |
76 ASSERT_EQ(2, t.size()); | 76 ASSERT_EQ(2u, t.size()); |
77 | 77 |
78 index.GetAllPublicIds(t, ResourceType_Instance); | 78 index.GetAllPublicIds(t, ResourceType_Instance); |
79 ASSERT_EQ(3, t.size()); | 79 ASSERT_EQ(3u, t.size()); |
80 } | 80 } |
81 | 81 |
82 index.SetGlobalProperty(GlobalProperty_FlushSleep, "World"); | 82 index.SetGlobalProperty(GlobalProperty_FlushSleep, "World"); |
83 | 83 |
84 index.AttachChild(a[0], a[1]); | 84 index.AttachChild(a[0], a[1]); |
105 ASSERT_TRUE(index.GetParentPublicId(s, a[3])); ASSERT_EQ("c", s); | 105 ASSERT_TRUE(index.GetParentPublicId(s, a[3])); ASSERT_EQ("c", s); |
106 ASSERT_TRUE(index.GetParentPublicId(s, a[4])); ASSERT_EQ("c", s); | 106 ASSERT_TRUE(index.GetParentPublicId(s, a[4])); ASSERT_EQ("c", s); |
107 ASSERT_TRUE(index.GetParentPublicId(s, a[5])); ASSERT_EQ("g", s); | 107 ASSERT_TRUE(index.GetParentPublicId(s, a[5])); ASSERT_EQ("g", s); |
108 | 108 |
109 std::list<std::string> l; | 109 std::list<std::string> l; |
110 index.GetChildrenPublicId(l, a[0]); ASSERT_EQ(1, l.size()); ASSERT_EQ("b", l.front()); | 110 index.GetChildrenPublicId(l, a[0]); ASSERT_EQ(1u, l.size()); ASSERT_EQ("b", l.front()); |
111 index.GetChildrenPublicId(l, a[1]); ASSERT_EQ(1, l.size()); ASSERT_EQ("c", l.front()); | 111 index.GetChildrenPublicId(l, a[1]); ASSERT_EQ(1u, l.size()); ASSERT_EQ("c", l.front()); |
112 index.GetChildrenPublicId(l, a[3]); ASSERT_EQ(0, l.size()); | 112 index.GetChildrenPublicId(l, a[3]); ASSERT_EQ(0u, l.size()); |
113 index.GetChildrenPublicId(l, a[4]); ASSERT_EQ(0, l.size()); | 113 index.GetChildrenPublicId(l, a[4]); ASSERT_EQ(0u, l.size()); |
114 index.GetChildrenPublicId(l, a[5]); ASSERT_EQ(0, l.size()); | 114 index.GetChildrenPublicId(l, a[5]); ASSERT_EQ(0u, l.size()); |
115 index.GetChildrenPublicId(l, a[6]); ASSERT_EQ(1, l.size()); ASSERT_EQ("f", l.front()); | 115 index.GetChildrenPublicId(l, a[6]); ASSERT_EQ(1u, l.size()); ASSERT_EQ("f", l.front()); |
116 | 116 |
117 index.GetChildrenPublicId(l, a[2]); ASSERT_EQ(2, l.size()); | 117 index.GetChildrenPublicId(l, a[2]); ASSERT_EQ(2u, l.size()); |
118 if (l.front() == "d") | 118 if (l.front() == "d") |
119 { | 119 { |
120 ASSERT_EQ("e", l.back()); | 120 ASSERT_EQ("e", l.back()); |
121 } | 121 } |
122 else | 122 else |
123 { | 123 { |
124 ASSERT_EQ("d", l.back()); | 124 ASSERT_EQ("d", l.back()); |
125 ASSERT_EQ("e", l.front()); | 125 ASSERT_EQ("e", l.front()); |
126 } | 126 } |
127 | 127 |
128 index.AttachFile(a[4], AttachedFileType_Json, "my json file", 21, 42, CompressionType_Zlib); | 128 index.AddAttachment(a[4], FileInfo("my json file", FileType_Json, 42, CompressionType_Zlib, 21)); |
129 index.AttachFile(a[4], AttachedFileType_Dicom, "my dicom file", 42); | 129 index.AddAttachment(a[4], FileInfo("my dicom file", FileType_Dicom, 42)); |
130 index.AttachFile(a[6], AttachedFileType_Dicom, "world", 44); | 130 index.AddAttachment(a[6], FileInfo("world", FileType_Dicom, 44)); |
131 index.SetMetadata(a[4], MetadataType_Instance_RemoteAet, "PINNACLE"); | 131 index.SetMetadata(a[4], MetadataType_Instance_RemoteAet, "PINNACLE"); |
132 | 132 |
133 ASSERT_EQ(21 + 42 + 44, index.GetTotalCompressedSize()); | 133 ASSERT_EQ(21u + 42u + 44u, index.GetTotalCompressedSize()); |
134 ASSERT_EQ(42 + 42 + 44, index.GetTotalUncompressedSize()); | 134 ASSERT_EQ(42u + 42u + 44u, index.GetTotalUncompressedSize()); |
135 | 135 |
136 DicomMap m; | 136 DicomMap m; |
137 m.SetValue(0x0010, 0x0010, "PatientName"); | 137 m.SetValue(0x0010, 0x0010, "PatientName"); |
138 index.SetMainDicomTags(a[3], m); | 138 index.SetMainDicomTags(a[3], m); |
139 | 139 |
153 ASSERT_FALSE(index.LookupGlobalProperty(s, static_cast<GlobalProperty>(42))); | 153 ASSERT_FALSE(index.LookupGlobalProperty(s, static_cast<GlobalProperty>(42))); |
154 ASSERT_EQ("World", s); | 154 ASSERT_EQ("World", s); |
155 ASSERT_EQ("World", index.GetGlobalProperty(GlobalProperty_FlushSleep)); | 155 ASSERT_EQ("World", index.GetGlobalProperty(GlobalProperty_FlushSleep)); |
156 ASSERT_EQ("None", index.GetGlobalProperty(static_cast<GlobalProperty>(42), "None")); | 156 ASSERT_EQ("None", index.GetGlobalProperty(static_cast<GlobalProperty>(42), "None")); |
157 | 157 |
158 uint64_t us, cs; | 158 FileInfo att; |
159 CompressionType ct; | 159 ASSERT_TRUE(index.LookupAttachment(att, a[4], FileType_Json)); |
160 ASSERT_TRUE(index.LookupFile(a[4], AttachedFileType_Json, s, cs, us, ct)); | 160 ASSERT_EQ("my json file", att.GetUuid()); |
161 ASSERT_EQ("my json file", s); | 161 ASSERT_EQ(21u, att.GetCompressedSize()); |
162 ASSERT_EQ(21, cs); | 162 ASSERT_EQ(42u, att.GetUncompressedSize()); |
163 ASSERT_EQ(42, us); | 163 ASSERT_EQ(CompressionType_Zlib, att.GetCompressionType()); |
164 ASSERT_EQ(CompressionType_Zlib, ct); | |
165 | 164 |
166 ASSERT_EQ(0u, listener.deletedFiles_.size()); | 165 ASSERT_EQ(0u, listener.deletedFiles_.size()); |
167 ASSERT_EQ(7, index.GetTableRecordCount("Resources")); | 166 ASSERT_EQ(7u, index.GetTableRecordCount("Resources")); |
168 ASSERT_EQ(3, index.GetTableRecordCount("AttachedFiles")); | 167 ASSERT_EQ(3u, index.GetTableRecordCount("AttachedFiles")); |
169 ASSERT_EQ(1, index.GetTableRecordCount("Metadata")); | 168 ASSERT_EQ(1u, index.GetTableRecordCount("Metadata")); |
170 ASSERT_EQ(1, index.GetTableRecordCount("MainDicomTags")); | 169 ASSERT_EQ(1u, index.GetTableRecordCount("MainDicomTags")); |
171 index.DeleteResource(a[0]); | 170 index.DeleteResource(a[0]); |
172 | 171 |
173 ASSERT_EQ(2, listener.deletedFiles_.size()); | 172 ASSERT_EQ(2u, listener.deletedFiles_.size()); |
174 ASSERT_FALSE(listener.deletedFiles_.find("my json file") == listener.deletedFiles_.end()); | 173 ASSERT_FALSE(listener.deletedFiles_.find("my json file") == listener.deletedFiles_.end()); |
175 ASSERT_FALSE(listener.deletedFiles_.find("my dicom file") == listener.deletedFiles_.end()); | 174 ASSERT_FALSE(listener.deletedFiles_.find("my dicom file") == listener.deletedFiles_.end()); |
176 | 175 |
177 ASSERT_EQ(2, index.GetTableRecordCount("Resources")); | 176 ASSERT_EQ(2u, index.GetTableRecordCount("Resources")); |
178 ASSERT_EQ(0, index.GetTableRecordCount("Metadata")); | 177 ASSERT_EQ(0u, index.GetTableRecordCount("Metadata")); |
179 ASSERT_EQ(1, index.GetTableRecordCount("AttachedFiles")); | 178 ASSERT_EQ(1u, index.GetTableRecordCount("AttachedFiles")); |
180 ASSERT_EQ(0, index.GetTableRecordCount("MainDicomTags")); | 179 ASSERT_EQ(0u, index.GetTableRecordCount("MainDicomTags")); |
181 index.DeleteResource(a[5]); | 180 index.DeleteResource(a[5]); |
182 ASSERT_EQ(0, index.GetTableRecordCount("Resources")); | 181 ASSERT_EQ(0u, index.GetTableRecordCount("Resources")); |
183 ASSERT_EQ(0, index.GetTableRecordCount("AttachedFiles")); | 182 ASSERT_EQ(0u, index.GetTableRecordCount("AttachedFiles")); |
184 ASSERT_EQ(1, index.GetTableRecordCount("GlobalProperties")); | 183 ASSERT_EQ(1u, index.GetTableRecordCount("GlobalProperties")); |
185 | 184 |
186 ASSERT_EQ(3, listener.deletedFiles_.size()); | 185 ASSERT_EQ(3u, listener.deletedFiles_.size()); |
187 ASSERT_FALSE(listener.deletedFiles_.find("world") == listener.deletedFiles_.end()); | 186 ASSERT_FALSE(listener.deletedFiles_.find("world") == listener.deletedFiles_.end()); |
188 } | 187 } |
189 | 188 |
190 | 189 |
191 | 190 |
215 index.AttachChild(a[5], a[7]); | 214 index.AttachChild(a[5], a[7]); |
216 | 215 |
217 { | 216 { |
218 Json::Value j; | 217 Json::Value j; |
219 index.GetChildren(j, a[0]); | 218 index.GetChildren(j, a[0]); |
220 ASSERT_EQ(2, j.size()); | 219 ASSERT_EQ(2u, j.size()); |
221 ASSERT_TRUE((j[0u] == "b" && j[1u] == "f") || | 220 ASSERT_TRUE((j[0u] == "b" && j[1u] == "f") || |
222 (j[1u] == "b" && j[0u] == "f")); | 221 (j[1u] == "b" && j[0u] == "f")); |
223 | 222 |
224 index.GetChildren(j, a[1]); | 223 index.GetChildren(j, a[1]); |
225 ASSERT_EQ(2, j.size()); | 224 ASSERT_EQ(2u, j.size()); |
226 ASSERT_TRUE((j[0u] == "c" && j[1u] == "g") || | 225 ASSERT_TRUE((j[0u] == "c" && j[1u] == "g") || |
227 (j[1u] == "c" && j[0u] == "g")); | 226 (j[1u] == "c" && j[0u] == "g")); |
228 | 227 |
229 index.GetChildren(j, a[2]); | 228 index.GetChildren(j, a[2]); |
230 ASSERT_EQ(2, j.size()); | 229 ASSERT_EQ(2u, j.size()); |
231 ASSERT_TRUE((j[0u] == "d" && j[1u] == "e") || | 230 ASSERT_TRUE((j[0u] == "d" && j[1u] == "e") || |
232 (j[1u] == "d" && j[0u] == "e")); | 231 (j[1u] == "d" && j[0u] == "e")); |
233 | 232 |
234 index.GetChildren(j, a[3]); ASSERT_EQ(0, j.size()); | 233 index.GetChildren(j, a[3]); ASSERT_EQ(0u, j.size()); |
235 index.GetChildren(j, a[4]); ASSERT_EQ(0, j.size()); | 234 index.GetChildren(j, a[4]); ASSERT_EQ(0u, j.size()); |
236 index.GetChildren(j, a[5]); ASSERT_EQ(1, j.size()); ASSERT_EQ("h", j[0u].asString()); | 235 index.GetChildren(j, a[5]); ASSERT_EQ(1u, j.size()); ASSERT_EQ("h", j[0u].asString()); |
237 index.GetChildren(j, a[6]); ASSERT_EQ(0, j.size()); | 236 index.GetChildren(j, a[6]); ASSERT_EQ(0u, j.size()); |
238 index.GetChildren(j, a[7]); ASSERT_EQ(0, j.size()); | 237 index.GetChildren(j, a[7]); ASSERT_EQ(0u, j.size()); |
239 } | 238 } |
240 | 239 |
241 listener.Reset(); | 240 listener.Reset(); |
242 index.DeleteResource(a[3]); | 241 index.DeleteResource(a[3]); |
243 ASSERT_EQ("c", listener.ancestorId_); | 242 ASSERT_EQ("c", listener.ancestorId_); |