21 CPPUNIT_TEST_SUITE(mitkTemporoSpatialStringPropertyTestSuite);
30 CPPUNIT_TEST_SUITE_END();
39 refJSON =
"{\"values\":[{\"t\":0, \"z\":0, \"value\":\"v_0_0\"}, {\"t\":3, \"z\":0, \"value\":\"v_3_0\"}, " 40 "{\"t\":3, \"z\":2, \"value\":\"v_3_2\"}, {\"t\":6, \"z\":1, \"value\":\"v_6_1\"}]}";
42 refProp->SetValue(0, 0,
"v_0_0");
43 refProp->SetValue(3, 0,
"v_3_0");
44 refProp->SetValue(3, 2,
"v_3_2");
45 refProp->SetValue(6, 1,
"v_6_1");
48 void tearDown()
override {}
51 CPPUNIT_ASSERT(refProp->GetValue() ==
"v_0_0");
53 CPPUNIT_ASSERT(refProp->GetValue(3, 0) ==
"v_3_0");
54 CPPUNIT_ASSERT(refProp->GetValue(3, 2) ==
"v_3_2");
55 CPPUNIT_ASSERT(refProp->GetValue(3, 1,
false,
true) ==
"v_3_0");
56 CPPUNIT_ASSERT(refProp->GetValue(3, 5,
false,
true) ==
"v_3_2");
58 CPPUNIT_ASSERT(refProp->GetValueBySlice(0) ==
"v_0_0");
59 CPPUNIT_ASSERT(refProp->GetValueBySlice(4,
true) ==
"v_0_0");
61 CPPUNIT_ASSERT(refProp->GetValueByTimeStep(3) ==
"v_3_0");
62 CPPUNIT_ASSERT(refProp->GetValueByTimeStep(6) ==
"v_6_1");
63 CPPUNIT_ASSERT(refProp->GetValueByTimeStep(5,
true) ==
"v_3_0");
65 CPPUNIT_ASSERT(refProp->GetValueAsString() ==
"v_0_0");
67 CPPUNIT_ASSERT(refProp->GetAvailableTimeSteps().size() == 3);
68 CPPUNIT_ASSERT(refProp->GetAvailableTimeSteps()[0] == 0);
69 CPPUNIT_ASSERT(refProp->GetAvailableTimeSteps()[1] == 3);
70 CPPUNIT_ASSERT(refProp->GetAvailableTimeSteps()[2] == 6);
72 CPPUNIT_ASSERT(refProp->GetAvailableSlices(0).size() == 1);
73 CPPUNIT_ASSERT(refProp->GetAvailableSlices(0)[0] == 0);
74 CPPUNIT_ASSERT(refProp->GetAvailableSlices(3).size() == 2);
75 CPPUNIT_ASSERT(refProp->GetAvailableSlices(3)[0] == 0);
76 CPPUNIT_ASSERT(refProp->GetAvailableSlices(3)[1] == 2);
78 CPPUNIT_ASSERT(refProp->GetAvailableSlices(2).size() == 0);
83 CPPUNIT_ASSERT(refProp->HasValue());
85 CPPUNIT_ASSERT(refProp->HasValue(3, 0));
86 CPPUNIT_ASSERT(refProp->HasValue(3, 2));
87 CPPUNIT_ASSERT(refProp->HasValue(3, 1,
false,
true));
88 CPPUNIT_ASSERT(refProp->HasValue(3, 5,
false,
true));
89 CPPUNIT_ASSERT(!refProp->HasValue(3, 1));
90 CPPUNIT_ASSERT(!refProp->HasValue(3, 5));
91 CPPUNIT_ASSERT(refProp->HasValue(4, 2,
true,
true));
92 CPPUNIT_ASSERT(refProp->HasValue(4, 2,
true,
false));
93 CPPUNIT_ASSERT(!refProp->HasValue(4, 2,
false,
true));
95 CPPUNIT_ASSERT(refProp->HasValueBySlice(0));
96 CPPUNIT_ASSERT(refProp->HasValueBySlice(4,
true));
97 CPPUNIT_ASSERT(!refProp->HasValueBySlice(4));
99 CPPUNIT_ASSERT(refProp->HasValueByTimeStep(3));
100 CPPUNIT_ASSERT(refProp->HasValueByTimeStep(6));
101 CPPUNIT_ASSERT(refProp->HasValueByTimeStep(5,
true));
102 CPPUNIT_ASSERT(!refProp->HasValueByTimeStep(5));
107 CPPUNIT_ASSERT_NO_THROW(refProp->SetValue(8, 9,
"v_8_9"));
108 CPPUNIT_ASSERT(refProp->GetValue(8, 9) ==
"v_8_9");
110 CPPUNIT_ASSERT_NO_THROW(refProp->SetValue(
"newValue"));
111 CPPUNIT_ASSERT(refProp->GetValue(0, 0) ==
"newValue");
112 CPPUNIT_ASSERT(refProp->GetAvailableTimeSteps().size() == 1);
113 CPPUNIT_ASSERT(refProp->GetAvailableSlices(0).size() == 1);
119 CPPUNIT_ASSERT(refJSON ==
131 tsProp->GetValue(0, 0) ==
134 tsProp->GetValue(3, 0) ==
137 tsProp->GetValue(3, 2) ==
140 tsProp->GetValue(6, 1) ==
142 CPPUNIT_ASSERT(*tsProp == *refProp);
MITK_TEST_SUITE_REGISTRATION(mitkImageToItk)
MITKCORE_EXPORT::std::string serializeTemporoSpatialStringPropertyToJSON(const mitk::BaseProperty *prop)
#define MITK_TEST(TESTMETHOD)
Adds a test to the current test suite.
Test fixture for parameterized tests.
MITKCORE_EXPORT mitk::BaseProperty::Pointer deserializeJSONToTemporoSpatialStringProperty(const std::string &value)
Property for time and space resolved string values.