comparison UnitTestsSources/DicomMapTests.cpp @ 2412:cad393b41bc3

handy shortcuts in DicomMap
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 29 Sep 2017 11:35:45 +0200
parents 3590c936e56f
children feb0d2dcfa9b
comparison
equal deleted inserted replaced
2411:82d5e305fbd9 2412:cad393b41bc3
229 double d; 229 double d;
230 int32_t i; 230 int32_t i;
231 int64_t j; 231 int64_t j;
232 uint32_t k; 232 uint32_t k;
233 uint64_t l; 233 uint64_t l;
234 std::string s;
234 235
235 m.SetValue(DICOM_TAG_PATIENT_NAME, " ", false); // Empty value 236 m.SetValue(DICOM_TAG_PATIENT_NAME, " ", false); // Empty value
236 ASSERT_FALSE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseFloat(f)); 237 ASSERT_FALSE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseFloat(f));
237 ASSERT_FALSE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseDouble(d)); 238 ASSERT_FALSE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseDouble(d));
238 ASSERT_FALSE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseInteger32(i)); 239 ASSERT_FALSE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseInteger32(i));
245 ASSERT_FALSE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseDouble(d)); 246 ASSERT_FALSE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseDouble(d));
246 ASSERT_FALSE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseInteger32(i)); 247 ASSERT_FALSE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseInteger32(i));
247 ASSERT_FALSE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseInteger64(j)); 248 ASSERT_FALSE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseInteger64(j));
248 ASSERT_FALSE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseUnsignedInteger32(k)); 249 ASSERT_FALSE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseUnsignedInteger32(k));
249 ASSERT_FALSE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseUnsignedInteger64(l)); 250 ASSERT_FALSE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseUnsignedInteger64(l));
251
252 ASSERT_FALSE(m.CopyToString(s, DICOM_TAG_PATIENT_NAME, false));
253 ASSERT_TRUE(m.CopyToString(s, DICOM_TAG_PATIENT_NAME, true));
254 ASSERT_EQ("0", s);
255
250 256
251 // 2**31-1 257 // 2**31-1
252 m.SetValue(DICOM_TAG_PATIENT_NAME, "2147483647", false); 258 m.SetValue(DICOM_TAG_PATIENT_NAME, "2147483647", false);
253 ASSERT_TRUE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseFloat(f)); 259 ASSERT_TRUE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseFloat(f));
254 ASSERT_TRUE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseDouble(d)); 260 ASSERT_TRUE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseDouble(d));
260 ASSERT_DOUBLE_EQ(2147483647.0, d); 266 ASSERT_DOUBLE_EQ(2147483647.0, d);
261 ASSERT_EQ(2147483647, i); 267 ASSERT_EQ(2147483647, i);
262 ASSERT_EQ(2147483647, j); 268 ASSERT_EQ(2147483647, j);
263 ASSERT_EQ(2147483647u, k); 269 ASSERT_EQ(2147483647u, k);
264 ASSERT_EQ(2147483647u, l); 270 ASSERT_EQ(2147483647u, l);
271
272 // Test shortcuts
273 m.SetValue(DICOM_TAG_PATIENT_NAME, "42", false);
274 ASSERT_TRUE(m.ParseFloat(f, DICOM_TAG_PATIENT_NAME));
275 ASSERT_TRUE(m.ParseDouble(d, DICOM_TAG_PATIENT_NAME));
276 ASSERT_TRUE(m.ParseInteger32(i, DICOM_TAG_PATIENT_NAME));
277 ASSERT_TRUE(m.ParseInteger64(j, DICOM_TAG_PATIENT_NAME));
278 ASSERT_TRUE(m.ParseUnsignedInteger32(k, DICOM_TAG_PATIENT_NAME));
279 ASSERT_TRUE(m.ParseUnsignedInteger64(l, DICOM_TAG_PATIENT_NAME));
280 ASSERT_FLOAT_EQ(42.0f, f);
281 ASSERT_DOUBLE_EQ(42.0, d);
282 ASSERT_EQ(42, i);
283 ASSERT_EQ(42, j);
284 ASSERT_EQ(42u, k);
285 ASSERT_EQ(42u, l);
286
287 ASSERT_TRUE(m.CopyToString(s, DICOM_TAG_PATIENT_NAME, false));
288 ASSERT_EQ("42", s);
289 ASSERT_TRUE(m.CopyToString(s, DICOM_TAG_PATIENT_NAME, true));
290 ASSERT_EQ("42", s);
291
265 292
266 // 2**31 293 // 2**31
267 m.SetValue(DICOM_TAG_PATIENT_NAME, "2147483648", false); 294 m.SetValue(DICOM_TAG_PATIENT_NAME, "2147483648", false);
268 ASSERT_TRUE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseFloat(f)); 295 ASSERT_TRUE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseFloat(f));
269 ASSERT_TRUE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseDouble(d)); 296 ASSERT_TRUE(m.GetValue(DICOM_TAG_PATIENT_NAME).ParseDouble(d));