msg1.types.push_back(MessageType::CONTROL_MESSAGE); msg1.strings.push_back("Test1"); msg1.strings.push_back("Test2"); msg1.integers.push_back(13); msg1.integers.push_back(42); auto t = snake::DateTime::now(); msg1.stamps.push_back(t); msg1.stamps.push_back(t - snake::Days(1)); msg1.version_map["V1"] = version; msg1.version_map["V2"] = v2; msg1.time_map[1] = msg1.stamps[0]; msg1.time_map[10] = msg1.stamps[1]; REQUIRE(msg1.serialize(s)); REQUIRE(msg2.deserialize(s)); REQUIRE(msg1.group.size() == msg2.group.size()); REQUIRE(msg1.group[0].major_version == msg2.group[0].major_version); REQUIRE(msg1.group[0].minor_version == msg2.group[0].minor_version); REQUIRE(msg1.msg.minor_version == msg2.msg.minor_version); REQUIRE(msg1.types.size() == msg2.types.size()); REQUIRE(msg1.types[0] == msg2.types[0]); REQUIRE(msg1.types[1] == msg2.types[1]); REQUIRE(msg1.strings.size() == msg2.strings.size()); REQUIRE(msg1.strings[0] == msg2.strings[0]); REQUIRE(msg1.strings[1] == msg2.strings[1]); REQUIRE(msg1.integers.size() == msg2.integers.size()); REQUIRE(msg1.integers[0] == msg2.integers[0]); REQUIRE(msg1.integers[1] == msg2.integers[1]);