#include #include #include namespace tp = td::protocol; static int TestAllPackets() { for (std::size_t i = 0; i < static_cast(tp::PacketType::PACKET_COUNT); i++) { const auto& packet = tp::PacketFactory::CreateReadOnlyPacket(tp::PacketType(i)); td::DataBuffer buffer = tp::PacketSerializer::Serialize(*packet.get()); tp::PacketPtr packet2 = tp::PacketSerializer::Deserialize(buffer); td_test_assert(packet2 != nullptr); td_test_assert(packet2->GetType() == packet->GetType()); } return 0; } static void Test() { tp::packets::ChatMessage packet({"caca"}); td::DataBuffer buffer = tp::PacketSerializer::Serialize(packet); } int main() { Test(); return TestAllPackets(); }