Update CHANGELOG.md
[KDIS.git] / tests / PDU_EncodeDecode5.cpp
blobfa54b0934fdba2e51ffdcf249d7f06193192d27a
1 #include <gtest/gtest.h>
3 #include <KDIS/PDU/Distributed_Emission_Regeneration/Designator_PDU.hpp>
4 #include <KDIS/PDU/Distributed_Emission_Regeneration/Electromagnetic_Emission_PDU.hpp>
5 #include <KDIS/PDU/Entity_Info_Interaction/Collision_PDU.hpp>
6 #include <KDIS/PDU/Entity_Info_Interaction/Entity_State_PDU.hpp>
7 #include <KDIS/PDU/Logistics/Repair_Complete_PDU.hpp>
8 #include <KDIS/PDU/Logistics/Repair_Response_PDU.hpp>
9 #include <KDIS/PDU/Logistics/Resupply_Cancel_PDU.hpp>
10 #include <KDIS/PDU/Logistics/Resupply_Offer_PDU.hpp>
11 #include <KDIS/PDU/Logistics/Resupply_Received_PDU.hpp>
12 #include <KDIS/PDU/Logistics/Service_Request_PDU.hpp>
13 #include <KDIS/PDU/Radio_Communications/Receiver_PDU.hpp>
14 #include <KDIS/PDU/Radio_Communications/Signal_PDU.hpp>
15 #include <KDIS/PDU/Radio_Communications/Transmitter_PDU.hpp>
16 #include <KDIS/PDU/Simulation_Management/Acknowledge_PDU.hpp>
17 #include <KDIS/PDU/Simulation_Management/Action_Request_PDU.hpp>
18 #include <KDIS/PDU/Simulation_Management/Action_Response_PDU.hpp>
19 #include <KDIS/PDU/Simulation_Management/Comment_PDU.hpp>
20 #include <KDIS/PDU/Simulation_Management/Create_Entity_PDU.hpp>
21 #include <KDIS/PDU/Simulation_Management/Data_PDU.hpp>
22 #include <KDIS/PDU/Simulation_Management/Data_Query_PDU.hpp>
23 #include <KDIS/PDU/Simulation_Management/Event_Report_PDU.hpp>
24 #include <KDIS/PDU/Simulation_Management/Remove_Entity_PDU.hpp>
25 #include <KDIS/PDU/Simulation_Management/Set_Data_PDU.hpp>
26 #include <KDIS/PDU/Simulation_Management/Start_Resume_PDU.hpp>
27 #include <KDIS/PDU/Simulation_Management/Stop_Freeze_PDU.hpp>
28 #include <KDIS/PDU/Warfare/Detonation_PDU.hpp>
29 #include <KDIS/PDU/Warfare/Fire_PDU.hpp>
30 #include <iostream>
33 // Distributed Emission Regeneration
35 TEST(PDU_EncodeDecode5, Designator_PDU) {
36 KDIS::PDU::Designator_PDU pduIn;
37 KDIS::KDataStream stream = pduIn.Encode();
38 KDIS::PDU::Designator_PDU pduOut(stream);
39 EXPECT_EQ(pduIn, pduOut);
40 EXPECT_EQ(0, stream.GetBufferSize());
43 TEST(PDU_EncodeDecode5, Electromagnetic_Emission_PDU) {
44 KDIS::PDU::Electromagnetic_Emission_PDU pduIn;
45 KDIS::KDataStream stream = pduIn.Encode();
46 KDIS::PDU::Electromagnetic_Emission_PDU pduOut(stream);
47 EXPECT_EQ(pduIn, pduOut);
48 EXPECT_EQ(0, stream.GetBufferSize());
52 // Entity Info Interaction
54 TEST(PDU_EncodeDecode5, Collision_PDU) {
55 KDIS::PDU::Collision_PDU pduIn;
56 KDIS::KDataStream stream = pduIn.Encode();
57 KDIS::PDU::Collision_PDU pduOut(stream);
58 EXPECT_EQ(pduIn, pduOut);
59 EXPECT_EQ(0, stream.GetBufferSize());
62 TEST(PDU_EncodeDecode5, Entity_State_PDU) {
63 KDIS::PDU::Entity_State_PDU pduIn;
64 KDIS::KDataStream stream = pduIn.Encode();
65 KDIS::PDU::Entity_State_PDU pduOut(stream);
66 EXPECT_EQ(pduIn, pduOut);
67 EXPECT_EQ(0, stream.GetBufferSize());
71 // Logistics
73 TEST(PDU_EncodeDecode5, Repair_Complete_PDU) {
74 KDIS::PDU::Repair_Complete_PDU pduIn;
75 KDIS::KDataStream stream = pduIn.Encode();
76 KDIS::PDU::Repair_Complete_PDU pduOut(stream);
77 EXPECT_EQ(pduIn, pduOut);
78 EXPECT_EQ(0, stream.GetBufferSize());
81 TEST(PDU_EncodeDecode5, Repair_Response_PDU) {
82 KDIS::PDU::Repair_Response_PDU pduIn;
83 KDIS::KDataStream stream = pduIn.Encode();
84 KDIS::PDU::Repair_Response_PDU pduOut(stream);
85 EXPECT_EQ(pduIn, pduOut);
86 EXPECT_EQ(0, stream.GetBufferSize());
89 TEST(PDU_EncodeDecode5, Resupply_Cancel_PDU) {
90 KDIS::PDU::Resupply_Cancel_PDU pduIn;
91 KDIS::KDataStream stream = pduIn.Encode();
92 KDIS::PDU::Resupply_Cancel_PDU pduOut(stream);
93 EXPECT_EQ(pduIn, pduOut);
94 EXPECT_EQ(0, stream.GetBufferSize());
97 TEST(PDU_EncodeDecode5, Resupply_Offer_PDU) {
98 KDIS::PDU::Resupply_Offer_PDU pduIn;
99 KDIS::KDataStream stream = pduIn.Encode();
100 KDIS::PDU::Resupply_Offer_PDU pduOut(stream);
101 EXPECT_EQ(pduIn, pduOut);
102 EXPECT_EQ(0, stream.GetBufferSize());
105 TEST(PDU_EncodeDecode5, Resupply_Received_PDU) {
106 KDIS::PDU::Resupply_Received_PDU pduIn;
107 KDIS::KDataStream stream = pduIn.Encode();
108 KDIS::PDU::Resupply_Received_PDU pduOut(stream);
109 EXPECT_EQ(pduIn, pduOut);
110 EXPECT_EQ(0, stream.GetBufferSize());
113 TEST(PDU_EncodeDecode5, Service_Request_PDU) {
114 KDIS::PDU::Service_Request_PDU pduIn;
115 KDIS::KDataStream stream = pduIn.Encode();
116 KDIS::PDU::Service_Request_PDU pduOut(stream);
117 EXPECT_EQ(pduIn, pduOut);
118 EXPECT_EQ(0, stream.GetBufferSize());
122 // Radio Communications
124 TEST(PDU_EncodeDecode5, Receiver_PDU) {
125 KDIS::PDU::Receiver_PDU pduIn;
126 KDIS::KDataStream stream = pduIn.Encode();
127 KDIS::PDU::Receiver_PDU pduOut(stream);
128 EXPECT_EQ(pduIn, pduOut);
129 EXPECT_EQ(0, stream.GetBufferSize());
132 TEST(PDU_EncodeDecode5, Signal_PDU) {
133 KDIS::PDU::Signal_PDU pduIn;
134 KDIS::KDataStream stream = pduIn.Encode();
135 KDIS::PDU::Signal_PDU pduOut(stream);
136 EXPECT_EQ(pduIn, pduOut);
137 EXPECT_EQ(0, stream.GetBufferSize());
140 TEST(PDU_EncodeDecode5, Transmitter_PDU) {
141 KDIS::PDU::Transmitter_PDU pduIn;
142 KDIS::KDataStream stream = pduIn.Encode();
143 KDIS::PDU::Transmitter_PDU pduOut(stream);
144 EXPECT_EQ(pduIn, pduOut);
145 EXPECT_EQ(0, stream.GetBufferSize());
149 // Simulation Management
151 TEST(PDU_EncodeDecode5, Acknowledge_PDU) {
152 KDIS::PDU::Acknowledge_PDU pduIn;
153 KDIS::KDataStream stream = pduIn.Encode();
154 KDIS::PDU::Acknowledge_PDU pduOut(stream);
155 EXPECT_EQ(pduIn, pduOut);
156 EXPECT_EQ(0, stream.GetBufferSize());
159 TEST(PDU_EncodeDecode5, Action_Request_PDU) {
160 KDIS::PDU::Action_Request_PDU pduIn;
161 KDIS::KDataStream stream = pduIn.Encode();
162 KDIS::PDU::Action_Request_PDU pduOut(stream);
163 EXPECT_EQ(pduIn, pduOut);
164 EXPECT_EQ(0, stream.GetBufferSize());
167 TEST(PDU_EncodeDecode5, Action_Response_PDU) {
168 KDIS::PDU::Action_Response_PDU pduIn;
169 KDIS::KDataStream stream = pduIn.Encode();
170 KDIS::PDU::Action_Response_PDU pduOut(stream);
171 EXPECT_EQ(pduIn, pduOut);
172 EXPECT_EQ(0, stream.GetBufferSize());
175 TEST(PDU_EncodeDecode5, Comment_PDU) {
176 KDIS::PDU::Comment_PDU pduIn;
177 KDIS::KDataStream stream = pduIn.Encode();
178 KDIS::PDU::Comment_PDU pduOut(stream);
179 EXPECT_EQ(pduIn, pduOut);
180 EXPECT_EQ(0, stream.GetBufferSize());
183 TEST(PDU_EncodeDecode5, Create_Entity_PDU) {
184 KDIS::PDU::Create_Entity_PDU pduIn;
185 KDIS::KDataStream stream = pduIn.Encode();
186 KDIS::PDU::Create_Entity_PDU pduOut(stream);
187 EXPECT_EQ(pduIn, pduOut);
188 EXPECT_EQ(0, stream.GetBufferSize());
191 TEST(PDU_EncodeDecode5, Data_PDU) {
192 KDIS::PDU::Data_PDU pduIn;
193 KDIS::KDataStream stream = pduIn.Encode();
194 KDIS::PDU::Data_PDU pduOut(stream);
195 EXPECT_EQ(pduIn, pduOut);
196 EXPECT_EQ(0, stream.GetBufferSize());
199 TEST(PDU_EncodeDecode5, Data_Query_PDU) {
200 KDIS::PDU::Data_Query_PDU pduIn;
201 KDIS::KDataStream stream = pduIn.Encode();
202 KDIS::PDU::Data_Query_PDU pduOut(stream);
203 EXPECT_EQ(pduIn, pduOut);
204 EXPECT_EQ(0, stream.GetBufferSize());
207 TEST(PDU_EncodeDecode5, Event_Report_PDU) {
208 KDIS::PDU::Event_Report_PDU pduIn;
209 KDIS::KDataStream stream = pduIn.Encode();
210 KDIS::PDU::Event_Report_PDU pduOut(stream);
211 EXPECT_EQ(pduIn, pduOut);
212 EXPECT_EQ(0, stream.GetBufferSize());
215 TEST(PDU_EncodeDecode5, Remove_Entity_PDU) {
216 KDIS::PDU::Remove_Entity_PDU pduIn;
217 KDIS::KDataStream stream = pduIn.Encode();
218 KDIS::PDU::Remove_Entity_PDU pduOut(stream);
219 EXPECT_EQ(pduIn, pduOut);
220 EXPECT_EQ(0, stream.GetBufferSize());
223 TEST(PDU_EncodeDecode5, Set_Data_PDU) {
224 KDIS::PDU::Set_Data_PDU pduIn;
225 KDIS::KDataStream stream = pduIn.Encode();
226 KDIS::PDU::Set_Data_PDU pduOut(stream);
227 EXPECT_EQ(pduIn, pduOut);
228 EXPECT_EQ(0, stream.GetBufferSize());
231 TEST(PDU_EncodeDecode5, Start_Resume_PDU) {
232 KDIS::PDU::Start_Resume_PDU pduIn;
233 KDIS::KDataStream stream = pduIn.Encode();
234 KDIS::PDU::Start_Resume_PDU pduOut(stream);
235 EXPECT_EQ(pduIn, pduOut);
236 EXPECT_EQ(0, stream.GetBufferSize());
239 TEST(PDU_EncodeDecode5, Stop_Freeze_PDU) {
240 KDIS::PDU::Stop_Freeze_PDU pduIn;
241 KDIS::KDataStream stream = pduIn.Encode();
242 KDIS::PDU::Stop_Freeze_PDU pduOut(stream);
243 EXPECT_EQ(pduIn, pduOut);
244 EXPECT_EQ(0, stream.GetBufferSize());
248 // Warfare
250 TEST(PDU_EncodeDecode5, Detonation_PDU) {
251 KDIS::PDU::Detonation_PDU pduIn;
252 KDIS::KDataStream stream = pduIn.Encode();
253 KDIS::PDU::Detonation_PDU pduOut(stream);
254 EXPECT_EQ(pduIn, pduOut);
255 EXPECT_EQ(0, stream.GetBufferSize());
258 TEST(PDU_EncodeDecode5, Fire_PDU) {
259 KDIS::PDU::Fire_PDU pduIn;
260 KDIS::KDataStream stream = pduIn.Encode();
261 KDIS::PDU::Fire_PDU pduOut(stream);
262 EXPECT_EQ(pduIn, pduOut);
263 EXPECT_EQ(0, stream.GetBufferSize());