comparison UnitTestsSources/MultiThreadingTests.cpp @ 2667:5fa2f2ce74f0 jobs

serialization of JobsRegistry
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 08 Jun 2018 15:48:35 +0200
parents 2540ac79ab6c
children 06c0a6b8a871
comparison
equal deleted inserted replaced
2666:2540ac79ab6c 2667:5fa2f2ce74f0
130 type = "DummyJob"; 130 type = "DummyJob";
131 } 131 }
132 132
133 virtual bool Serialize(Json::Value& value) 133 virtual bool Serialize(Json::Value& value)
134 { 134 {
135 value = Json::objectValue;
136 value["Type"] = "DummyJob";
135 return true; 137 return true;
136 } 138 }
137 139
138 virtual void GetPublicContent(Json::Value& value) 140 virtual void GetPublicContent(Json::Value& value)
139 { 141 {
177 virtual IJob* UnserializeJob(const Json::Value& value) 179 virtual IJob* UnserializeJob(const Json::Value& value)
178 { 180 {
179 if (SerializationToolbox::ReadString(value, "Type") == "DummyInstancesJob") 181 if (SerializationToolbox::ReadString(value, "Type") == "DummyInstancesJob")
180 { 182 {
181 return new DummyInstancesJob(value); 183 return new DummyInstancesJob(value);
184 }
185 else if (SerializationToolbox::ReadString(value, "Type") == "DummyJob")
186 {
187 return new DummyJob;
182 } 188 }
183 else 189 else
184 { 190 {
185 return GenericJobUnserializer::UnserializeJob(value); 191 return GenericJobUnserializer::UnserializeJob(value);
186 } 192 }
1463 } 1469 }
1464 1470
1465 1471
1466 TEST(JobsSerialization, Registry) 1472 TEST(JobsSerialization, Registry)
1467 { 1473 {
1468 // TODO : Test serialization of JobsRegistry 1474 Json::Value s;
1469 } 1475 std::string i1, i2;
1476
1477 {
1478 JobsRegistry registry;
1479 registry.Submit(i1, new DummyJob(), 10);
1480 registry.Submit(i2, new SequenceOfOperationsJob(), 30);
1481 registry.Serialize(s);
1482 }
1483
1484 {
1485 DummyUnserializer unserializer;
1486 JobsRegistry registry(unserializer, s);
1487
1488 Json::Value t;
1489 registry.Serialize(t);
1490 ASSERT_TRUE(CheckSameJson(s, t));
1491 }
1492 }