31 lines
802 B
C++
31 lines
802 B
C++
#include <td/protocol/packet/PacketSerializer.h>
|
|
|
|
#include <td/misc/Test.h>
|
|
#include <td/protocol/packet/PacketFactory.h>
|
|
|
|
namespace tp = td::protocol;
|
|
|
|
static int TestAllPackets() {
|
|
for (std::size_t i = 0; i < static_cast<std::size_t>(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();
|
|
} |