MCPcopy Create free account
hub / github.com/attermann/microReticulum / testDeserializeMap

Function testDeserializeMap

test/test_persistence/test_persistence.cpp:462–496  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

460}
461
462void testDeserializeMap() {
463
464 JsonDocument doc;
465
466 RNS::Bytes data;
467 if (RNS::Utilities::OS::read_file(test_map_path, data) > 0) {
468 TRACEF("testDeserializeMap: read: %lu bytes", data.size());
469 //TRACEF("testDeserializeMap: data: %s", data.toString().c_str());
470 DeserializationError error = deserializeJson(doc, data.data());
471 //DeserializationError error = deserializeMsgPack(doc, data.data());
472 if (!error) {
473 TRACE("testDeserializeMap: successfully deserialized");
474
475 std::map<std::string, TestObject> map(doc.as<std::map<std::string, TestObject>>());
476 for (auto& [str, test] : map) {
477 TRACEF("testDeserializeMap: entry: %s = %s", str.c_str(), test.toString().c_str());
478 }
479
480 //JsonObject root = doc.as<JsonObject>();
481 //for (JsonPair kv : root) {
482 // TRACEF("testDeserializeMap: entry: %s = %s", kv.key().c_str(), kv.value().as<TestObject>().toString().c_str());
483 //}
484 }
485 else {
486 TRACE("testDeserializeMap: failed to deserialize");
487 TEST_FAIL();
488 }
489 //assert(RNS::Utilities::OS::remove_file(test_map_path));
490 }
491 else {
492 TRACE("testDeserializeMap: read failed");
493 TEST_FAIL();
494 }
495
496}
497
498const char test_path_table_path[] = "./test_path_table";
499const char test_empty_path_table_path[] = "./test_empty_path_table";

Callers

nothing calls this directly

Calls 3

dataMethod · 0.80
sizeMethod · 0.45
toStringMethod · 0.45

Tested by

no test coverage detected