Subversion Repositories Projects

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1702 - 1
/** @file
2
 *      @brief MAVLink comm protocol testsuite generated from sensesoar.xml
3
 *      @see http://qgroundcontrol.org/mavlink/
4
 */
5
#ifndef SENSESOAR_TESTSUITE_H
6
#define SENSESOAR_TESTSUITE_H
7
 
8
#ifdef __cplusplus
9
extern "C" {
10
#endif
11
 
12
#ifndef MAVLINK_TEST_ALL
13
#define MAVLINK_TEST_ALL
14
static void mavlink_test_common(uint8_t, uint8_t, mavlink_message_t *last_msg);
15
static void mavlink_test_sensesoar(uint8_t, uint8_t, mavlink_message_t *last_msg);
16
 
17
static void mavlink_test_all(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
18
{
19
        mavlink_test_common(system_id, component_id, last_msg);
20
        mavlink_test_sensesoar(system_id, component_id, last_msg);
21
}
22
#endif
23
 
24
#include "../common/testsuite.h"
25
 
26
 
27
static void mavlink_test_obs_position(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
28
{
29
        mavlink_message_t msg;
30
        uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
31
        uint16_t i;
32
        mavlink_obs_position_t packet_in = {
33
                963497464,
34
        963497672,
35
        963497880,
36
        };
37
        mavlink_obs_position_t packet1, packet2;
38
        memset(&packet1, 0, sizeof(packet1));
39
                packet1.lon = packet_in.lon;
40
                packet1.lat = packet_in.lat;
41
                packet1.alt = packet_in.alt;
42
 
43
 
44
 
45
        memset(&packet2, 0, sizeof(packet2));
46
        mavlink_msg_obs_position_encode(system_id, component_id, &msg, &packet1);
47
        mavlink_msg_obs_position_decode(&msg, &packet2);
48
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
49
 
50
        memset(&packet2, 0, sizeof(packet2));
51
        mavlink_msg_obs_position_pack(system_id, component_id, &msg , packet1.lon , packet1.lat , packet1.alt );
52
        mavlink_msg_obs_position_decode(&msg, &packet2);
53
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
54
 
55
        memset(&packet2, 0, sizeof(packet2));
56
        mavlink_msg_obs_position_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.lon , packet1.lat , packet1.alt );
57
        mavlink_msg_obs_position_decode(&msg, &packet2);
58
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
59
 
60
        memset(&packet2, 0, sizeof(packet2));
61
        mavlink_msg_to_send_buffer(buffer, &msg);
62
        for (i=0; i<mavlink_msg_get_send_buffer_length(&msg); i++) {
63
                comm_send_ch(MAVLINK_COMM_0, buffer[i]);
64
        }
65
        mavlink_msg_obs_position_decode(last_msg, &packet2);
66
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
67
 
68
        memset(&packet2, 0, sizeof(packet2));
69
        mavlink_msg_obs_position_send(MAVLINK_COMM_1 , packet1.lon , packet1.lat , packet1.alt );
70
        mavlink_msg_obs_position_decode(last_msg, &packet2);
71
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
72
}
73
 
74
static void mavlink_test_obs_velocity(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
75
{
76
        mavlink_message_t msg;
77
        uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
78
        uint16_t i;
79
        mavlink_obs_velocity_t packet_in = {
80
                { 17.0, 18.0, 19.0 },
81
        };
82
        mavlink_obs_velocity_t packet1, packet2;
83
        memset(&packet1, 0, sizeof(packet1));
84
 
85
                mav_array_memcpy(packet1.vel, packet_in.vel, sizeof(float)*3);
86
 
87
 
88
        memset(&packet2, 0, sizeof(packet2));
89
        mavlink_msg_obs_velocity_encode(system_id, component_id, &msg, &packet1);
90
        mavlink_msg_obs_velocity_decode(&msg, &packet2);
91
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
92
 
93
        memset(&packet2, 0, sizeof(packet2));
94
        mavlink_msg_obs_velocity_pack(system_id, component_id, &msg , packet1.vel );
95
        mavlink_msg_obs_velocity_decode(&msg, &packet2);
96
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
97
 
98
        memset(&packet2, 0, sizeof(packet2));
99
        mavlink_msg_obs_velocity_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.vel );
100
        mavlink_msg_obs_velocity_decode(&msg, &packet2);
101
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
102
 
103
        memset(&packet2, 0, sizeof(packet2));
104
        mavlink_msg_to_send_buffer(buffer, &msg);
105
        for (i=0; i<mavlink_msg_get_send_buffer_length(&msg); i++) {
106
                comm_send_ch(MAVLINK_COMM_0, buffer[i]);
107
        }
108
        mavlink_msg_obs_velocity_decode(last_msg, &packet2);
109
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
110
 
111
        memset(&packet2, 0, sizeof(packet2));
112
        mavlink_msg_obs_velocity_send(MAVLINK_COMM_1 , packet1.vel );
113
        mavlink_msg_obs_velocity_decode(last_msg, &packet2);
114
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
115
}
116
 
117
static void mavlink_test_obs_attitude(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
118
{
119
        mavlink_message_t msg;
120
        uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
121
        uint16_t i;
122
        mavlink_obs_attitude_t packet_in = {
123
                { 123.0, 124.0, 125.0, 126.0 },
124
        };
125
        mavlink_obs_attitude_t packet1, packet2;
126
        memset(&packet1, 0, sizeof(packet1));
127
 
128
                mav_array_memcpy(packet1.quat, packet_in.quat, sizeof(double)*4);
129
 
130
 
131
        memset(&packet2, 0, sizeof(packet2));
132
        mavlink_msg_obs_attitude_encode(system_id, component_id, &msg, &packet1);
133
        mavlink_msg_obs_attitude_decode(&msg, &packet2);
134
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
135
 
136
        memset(&packet2, 0, sizeof(packet2));
137
        mavlink_msg_obs_attitude_pack(system_id, component_id, &msg , packet1.quat );
138
        mavlink_msg_obs_attitude_decode(&msg, &packet2);
139
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
140
 
141
        memset(&packet2, 0, sizeof(packet2));
142
        mavlink_msg_obs_attitude_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.quat );
143
        mavlink_msg_obs_attitude_decode(&msg, &packet2);
144
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
145
 
146
        memset(&packet2, 0, sizeof(packet2));
147
        mavlink_msg_to_send_buffer(buffer, &msg);
148
        for (i=0; i<mavlink_msg_get_send_buffer_length(&msg); i++) {
149
                comm_send_ch(MAVLINK_COMM_0, buffer[i]);
150
        }
151
        mavlink_msg_obs_attitude_decode(last_msg, &packet2);
152
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
153
 
154
        memset(&packet2, 0, sizeof(packet2));
155
        mavlink_msg_obs_attitude_send(MAVLINK_COMM_1 , packet1.quat );
156
        mavlink_msg_obs_attitude_decode(last_msg, &packet2);
157
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
158
}
159
 
160
static void mavlink_test_obs_wind(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
161
{
162
        mavlink_message_t msg;
163
        uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
164
        uint16_t i;
165
        mavlink_obs_wind_t packet_in = {
166
                { 17.0, 18.0, 19.0 },
167
        };
168
        mavlink_obs_wind_t packet1, packet2;
169
        memset(&packet1, 0, sizeof(packet1));
170
 
171
                mav_array_memcpy(packet1.wind, packet_in.wind, sizeof(float)*3);
172
 
173
 
174
        memset(&packet2, 0, sizeof(packet2));
175
        mavlink_msg_obs_wind_encode(system_id, component_id, &msg, &packet1);
176
        mavlink_msg_obs_wind_decode(&msg, &packet2);
177
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
178
 
179
        memset(&packet2, 0, sizeof(packet2));
180
        mavlink_msg_obs_wind_pack(system_id, component_id, &msg , packet1.wind );
181
        mavlink_msg_obs_wind_decode(&msg, &packet2);
182
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
183
 
184
        memset(&packet2, 0, sizeof(packet2));
185
        mavlink_msg_obs_wind_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.wind );
186
        mavlink_msg_obs_wind_decode(&msg, &packet2);
187
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
188
 
189
        memset(&packet2, 0, sizeof(packet2));
190
        mavlink_msg_to_send_buffer(buffer, &msg);
191
        for (i=0; i<mavlink_msg_get_send_buffer_length(&msg); i++) {
192
                comm_send_ch(MAVLINK_COMM_0, buffer[i]);
193
        }
194
        mavlink_msg_obs_wind_decode(last_msg, &packet2);
195
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
196
 
197
        memset(&packet2, 0, sizeof(packet2));
198
        mavlink_msg_obs_wind_send(MAVLINK_COMM_1 , packet1.wind );
199
        mavlink_msg_obs_wind_decode(last_msg, &packet2);
200
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
201
}
202
 
203
static void mavlink_test_obs_air_velocity(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
204
{
205
        mavlink_message_t msg;
206
        uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
207
        uint16_t i;
208
        mavlink_obs_air_velocity_t packet_in = {
209
                17.0,
210
        45.0,
211
        73.0,
212
        };
213
        mavlink_obs_air_velocity_t packet1, packet2;
214
        memset(&packet1, 0, sizeof(packet1));
215
                packet1.magnitude = packet_in.magnitude;
216
                packet1.aoa = packet_in.aoa;
217
                packet1.slip = packet_in.slip;
218
 
219
 
220
 
221
        memset(&packet2, 0, sizeof(packet2));
222
        mavlink_msg_obs_air_velocity_encode(system_id, component_id, &msg, &packet1);
223
        mavlink_msg_obs_air_velocity_decode(&msg, &packet2);
224
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
225
 
226
        memset(&packet2, 0, sizeof(packet2));
227
        mavlink_msg_obs_air_velocity_pack(system_id, component_id, &msg , packet1.magnitude , packet1.aoa , packet1.slip );
228
        mavlink_msg_obs_air_velocity_decode(&msg, &packet2);
229
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
230
 
231
        memset(&packet2, 0, sizeof(packet2));
232
        mavlink_msg_obs_air_velocity_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.magnitude , packet1.aoa , packet1.slip );
233
        mavlink_msg_obs_air_velocity_decode(&msg, &packet2);
234
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
235
 
236
        memset(&packet2, 0, sizeof(packet2));
237
        mavlink_msg_to_send_buffer(buffer, &msg);
238
        for (i=0; i<mavlink_msg_get_send_buffer_length(&msg); i++) {
239
                comm_send_ch(MAVLINK_COMM_0, buffer[i]);
240
        }
241
        mavlink_msg_obs_air_velocity_decode(last_msg, &packet2);
242
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
243
 
244
        memset(&packet2, 0, sizeof(packet2));
245
        mavlink_msg_obs_air_velocity_send(MAVLINK_COMM_1 , packet1.magnitude , packet1.aoa , packet1.slip );
246
        mavlink_msg_obs_air_velocity_decode(last_msg, &packet2);
247
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
248
}
249
 
250
static void mavlink_test_obs_bias(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
251
{
252
        mavlink_message_t msg;
253
        uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
254
        uint16_t i;
255
        mavlink_obs_bias_t packet_in = {
256
                { 17.0, 18.0, 19.0 },
257
        { 101.0, 102.0, 103.0 },
258
        };
259
        mavlink_obs_bias_t packet1, packet2;
260
        memset(&packet1, 0, sizeof(packet1));
261
 
262
                mav_array_memcpy(packet1.accBias, packet_in.accBias, sizeof(float)*3);
263
                mav_array_memcpy(packet1.gyroBias, packet_in.gyroBias, sizeof(float)*3);
264
 
265
 
266
        memset(&packet2, 0, sizeof(packet2));
267
        mavlink_msg_obs_bias_encode(system_id, component_id, &msg, &packet1);
268
        mavlink_msg_obs_bias_decode(&msg, &packet2);
269
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
270
 
271
        memset(&packet2, 0, sizeof(packet2));
272
        mavlink_msg_obs_bias_pack(system_id, component_id, &msg , packet1.accBias , packet1.gyroBias );
273
        mavlink_msg_obs_bias_decode(&msg, &packet2);
274
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
275
 
276
        memset(&packet2, 0, sizeof(packet2));
277
        mavlink_msg_obs_bias_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.accBias , packet1.gyroBias );
278
        mavlink_msg_obs_bias_decode(&msg, &packet2);
279
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
280
 
281
        memset(&packet2, 0, sizeof(packet2));
282
        mavlink_msg_to_send_buffer(buffer, &msg);
283
        for (i=0; i<mavlink_msg_get_send_buffer_length(&msg); i++) {
284
                comm_send_ch(MAVLINK_COMM_0, buffer[i]);
285
        }
286
        mavlink_msg_obs_bias_decode(last_msg, &packet2);
287
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
288
 
289
        memset(&packet2, 0, sizeof(packet2));
290
        mavlink_msg_obs_bias_send(MAVLINK_COMM_1 , packet1.accBias , packet1.gyroBias );
291
        mavlink_msg_obs_bias_decode(last_msg, &packet2);
292
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
293
}
294
 
295
static void mavlink_test_obs_qff(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
296
{
297
        mavlink_message_t msg;
298
        uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
299
        uint16_t i;
300
        mavlink_obs_qff_t packet_in = {
301
                17.0,
302
        };
303
        mavlink_obs_qff_t packet1, packet2;
304
        memset(&packet1, 0, sizeof(packet1));
305
                packet1.qff = packet_in.qff;
306
 
307
 
308
 
309
        memset(&packet2, 0, sizeof(packet2));
310
        mavlink_msg_obs_qff_encode(system_id, component_id, &msg, &packet1);
311
        mavlink_msg_obs_qff_decode(&msg, &packet2);
312
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
313
 
314
        memset(&packet2, 0, sizeof(packet2));
315
        mavlink_msg_obs_qff_pack(system_id, component_id, &msg , packet1.qff );
316
        mavlink_msg_obs_qff_decode(&msg, &packet2);
317
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
318
 
319
        memset(&packet2, 0, sizeof(packet2));
320
        mavlink_msg_obs_qff_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.qff );
321
        mavlink_msg_obs_qff_decode(&msg, &packet2);
322
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
323
 
324
        memset(&packet2, 0, sizeof(packet2));
325
        mavlink_msg_to_send_buffer(buffer, &msg);
326
        for (i=0; i<mavlink_msg_get_send_buffer_length(&msg); i++) {
327
                comm_send_ch(MAVLINK_COMM_0, buffer[i]);
328
        }
329
        mavlink_msg_obs_qff_decode(last_msg, &packet2);
330
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
331
 
332
        memset(&packet2, 0, sizeof(packet2));
333
        mavlink_msg_obs_qff_send(MAVLINK_COMM_1 , packet1.qff );
334
        mavlink_msg_obs_qff_decode(last_msg, &packet2);
335
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
336
}
337
 
338
static void mavlink_test_obs_air_temp(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
339
{
340
        mavlink_message_t msg;
341
        uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
342
        uint16_t i;
343
        mavlink_obs_air_temp_t packet_in = {
344
                17.0,
345
        };
346
        mavlink_obs_air_temp_t packet1, packet2;
347
        memset(&packet1, 0, sizeof(packet1));
348
                packet1.airT = packet_in.airT;
349
 
350
 
351
 
352
        memset(&packet2, 0, sizeof(packet2));
353
        mavlink_msg_obs_air_temp_encode(system_id, component_id, &msg, &packet1);
354
        mavlink_msg_obs_air_temp_decode(&msg, &packet2);
355
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
356
 
357
        memset(&packet2, 0, sizeof(packet2));
358
        mavlink_msg_obs_air_temp_pack(system_id, component_id, &msg , packet1.airT );
359
        mavlink_msg_obs_air_temp_decode(&msg, &packet2);
360
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
361
 
362
        memset(&packet2, 0, sizeof(packet2));
363
        mavlink_msg_obs_air_temp_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.airT );
364
        mavlink_msg_obs_air_temp_decode(&msg, &packet2);
365
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
366
 
367
        memset(&packet2, 0, sizeof(packet2));
368
        mavlink_msg_to_send_buffer(buffer, &msg);
369
        for (i=0; i<mavlink_msg_get_send_buffer_length(&msg); i++) {
370
                comm_send_ch(MAVLINK_COMM_0, buffer[i]);
371
        }
372
        mavlink_msg_obs_air_temp_decode(last_msg, &packet2);
373
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
374
 
375
        memset(&packet2, 0, sizeof(packet2));
376
        mavlink_msg_obs_air_temp_send(MAVLINK_COMM_1 , packet1.airT );
377
        mavlink_msg_obs_air_temp_decode(last_msg, &packet2);
378
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
379
}
380
 
381
static void mavlink_test_filt_rot_vel(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
382
{
383
        mavlink_message_t msg;
384
        uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
385
        uint16_t i;
386
        mavlink_filt_rot_vel_t packet_in = {
387
                { 17.0, 18.0, 19.0 },
388
        };
389
        mavlink_filt_rot_vel_t packet1, packet2;
390
        memset(&packet1, 0, sizeof(packet1));
391
 
392
                mav_array_memcpy(packet1.rotVel, packet_in.rotVel, sizeof(float)*3);
393
 
394
 
395
        memset(&packet2, 0, sizeof(packet2));
396
        mavlink_msg_filt_rot_vel_encode(system_id, component_id, &msg, &packet1);
397
        mavlink_msg_filt_rot_vel_decode(&msg, &packet2);
398
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
399
 
400
        memset(&packet2, 0, sizeof(packet2));
401
        mavlink_msg_filt_rot_vel_pack(system_id, component_id, &msg , packet1.rotVel );
402
        mavlink_msg_filt_rot_vel_decode(&msg, &packet2);
403
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
404
 
405
        memset(&packet2, 0, sizeof(packet2));
406
        mavlink_msg_filt_rot_vel_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.rotVel );
407
        mavlink_msg_filt_rot_vel_decode(&msg, &packet2);
408
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
409
 
410
        memset(&packet2, 0, sizeof(packet2));
411
        mavlink_msg_to_send_buffer(buffer, &msg);
412
        for (i=0; i<mavlink_msg_get_send_buffer_length(&msg); i++) {
413
                comm_send_ch(MAVLINK_COMM_0, buffer[i]);
414
        }
415
        mavlink_msg_filt_rot_vel_decode(last_msg, &packet2);
416
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
417
 
418
        memset(&packet2, 0, sizeof(packet2));
419
        mavlink_msg_filt_rot_vel_send(MAVLINK_COMM_1 , packet1.rotVel );
420
        mavlink_msg_filt_rot_vel_decode(last_msg, &packet2);
421
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
422
}
423
 
424
static void mavlink_test_llc_out(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
425
{
426
        mavlink_message_t msg;
427
        uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
428
        uint16_t i;
429
        mavlink_llc_out_t packet_in = {
430
                { 17235, 17236, 17237, 17238 },
431
        { 17651, 17652 },
432
        };
433
        mavlink_llc_out_t packet1, packet2;
434
        memset(&packet1, 0, sizeof(packet1));
435
 
436
                mav_array_memcpy(packet1.servoOut, packet_in.servoOut, sizeof(int16_t)*4);
437
                mav_array_memcpy(packet1.MotorOut, packet_in.MotorOut, sizeof(int16_t)*2);
438
 
439
 
440
        memset(&packet2, 0, sizeof(packet2));
441
        mavlink_msg_llc_out_encode(system_id, component_id, &msg, &packet1);
442
        mavlink_msg_llc_out_decode(&msg, &packet2);
443
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
444
 
445
        memset(&packet2, 0, sizeof(packet2));
446
        mavlink_msg_llc_out_pack(system_id, component_id, &msg , packet1.servoOut , packet1.MotorOut );
447
        mavlink_msg_llc_out_decode(&msg, &packet2);
448
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
449
 
450
        memset(&packet2, 0, sizeof(packet2));
451
        mavlink_msg_llc_out_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.servoOut , packet1.MotorOut );
452
        mavlink_msg_llc_out_decode(&msg, &packet2);
453
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
454
 
455
        memset(&packet2, 0, sizeof(packet2));
456
        mavlink_msg_to_send_buffer(buffer, &msg);
457
        for (i=0; i<mavlink_msg_get_send_buffer_length(&msg); i++) {
458
                comm_send_ch(MAVLINK_COMM_0, buffer[i]);
459
        }
460
        mavlink_msg_llc_out_decode(last_msg, &packet2);
461
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
462
 
463
        memset(&packet2, 0, sizeof(packet2));
464
        mavlink_msg_llc_out_send(MAVLINK_COMM_1 , packet1.servoOut , packet1.MotorOut );
465
        mavlink_msg_llc_out_decode(last_msg, &packet2);
466
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
467
}
468
 
469
static void mavlink_test_pm_elec(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
470
{
471
        mavlink_message_t msg;
472
        uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
473
        uint16_t i;
474
        mavlink_pm_elec_t packet_in = {
475
                17.0,
476
        45.0,
477
        { 73.0, 74.0, 75.0 },
478
        };
479
        mavlink_pm_elec_t packet1, packet2;
480
        memset(&packet1, 0, sizeof(packet1));
481
                packet1.PwCons = packet_in.PwCons;
482
                packet1.BatStat = packet_in.BatStat;
483
 
484
                mav_array_memcpy(packet1.PwGen, packet_in.PwGen, sizeof(float)*3);
485
 
486
 
487
        memset(&packet2, 0, sizeof(packet2));
488
        mavlink_msg_pm_elec_encode(system_id, component_id, &msg, &packet1);
489
        mavlink_msg_pm_elec_decode(&msg, &packet2);
490
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
491
 
492
        memset(&packet2, 0, sizeof(packet2));
493
        mavlink_msg_pm_elec_pack(system_id, component_id, &msg , packet1.PwCons , packet1.BatStat , packet1.PwGen );
494
        mavlink_msg_pm_elec_decode(&msg, &packet2);
495
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
496
 
497
        memset(&packet2, 0, sizeof(packet2));
498
        mavlink_msg_pm_elec_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.PwCons , packet1.BatStat , packet1.PwGen );
499
        mavlink_msg_pm_elec_decode(&msg, &packet2);
500
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
501
 
502
        memset(&packet2, 0, sizeof(packet2));
503
        mavlink_msg_to_send_buffer(buffer, &msg);
504
        for (i=0; i<mavlink_msg_get_send_buffer_length(&msg); i++) {
505
                comm_send_ch(MAVLINK_COMM_0, buffer[i]);
506
        }
507
        mavlink_msg_pm_elec_decode(last_msg, &packet2);
508
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
509
 
510
        memset(&packet2, 0, sizeof(packet2));
511
        mavlink_msg_pm_elec_send(MAVLINK_COMM_1 , packet1.PwCons , packet1.BatStat , packet1.PwGen );
512
        mavlink_msg_pm_elec_decode(last_msg, &packet2);
513
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
514
}
515
 
516
static void mavlink_test_sys_stat(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
517
{
518
        mavlink_message_t msg;
519
        uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
520
        uint16_t i;
521
        mavlink_sys_stat_t packet_in = {
522
                5,
523
        72,
524
        139,
525
        206,
526
        };
527
        mavlink_sys_stat_t packet1, packet2;
528
        memset(&packet1, 0, sizeof(packet1));
529
                packet1.gps = packet_in.gps;
530
                packet1.act = packet_in.act;
531
                packet1.mod = packet_in.mod;
532
                packet1.commRssi = packet_in.commRssi;
533
 
534
 
535
 
536
        memset(&packet2, 0, sizeof(packet2));
537
        mavlink_msg_sys_stat_encode(system_id, component_id, &msg, &packet1);
538
        mavlink_msg_sys_stat_decode(&msg, &packet2);
539
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
540
 
541
        memset(&packet2, 0, sizeof(packet2));
542
        mavlink_msg_sys_stat_pack(system_id, component_id, &msg , packet1.gps , packet1.act , packet1.mod , packet1.commRssi );
543
        mavlink_msg_sys_stat_decode(&msg, &packet2);
544
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
545
 
546
        memset(&packet2, 0, sizeof(packet2));
547
        mavlink_msg_sys_stat_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.gps , packet1.act , packet1.mod , packet1.commRssi );
548
        mavlink_msg_sys_stat_decode(&msg, &packet2);
549
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
550
 
551
        memset(&packet2, 0, sizeof(packet2));
552
        mavlink_msg_to_send_buffer(buffer, &msg);
553
        for (i=0; i<mavlink_msg_get_send_buffer_length(&msg); i++) {
554
                comm_send_ch(MAVLINK_COMM_0, buffer[i]);
555
        }
556
        mavlink_msg_sys_stat_decode(last_msg, &packet2);
557
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
558
 
559
        memset(&packet2, 0, sizeof(packet2));
560
        mavlink_msg_sys_stat_send(MAVLINK_COMM_1 , packet1.gps , packet1.act , packet1.mod , packet1.commRssi );
561
        mavlink_msg_sys_stat_decode(last_msg, &packet2);
562
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
563
}
564
 
565
static void mavlink_test_cmd_airspeed_chng(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
566
{
567
        mavlink_message_t msg;
568
        uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
569
        uint16_t i;
570
        mavlink_cmd_airspeed_chng_t packet_in = {
571
                17.0,
572
        17,
573
        };
574
        mavlink_cmd_airspeed_chng_t packet1, packet2;
575
        memset(&packet1, 0, sizeof(packet1));
576
                packet1.spCmd = packet_in.spCmd;
577
                packet1.target = packet_in.target;
578
 
579
 
580
 
581
        memset(&packet2, 0, sizeof(packet2));
582
        mavlink_msg_cmd_airspeed_chng_encode(system_id, component_id, &msg, &packet1);
583
        mavlink_msg_cmd_airspeed_chng_decode(&msg, &packet2);
584
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
585
 
586
        memset(&packet2, 0, sizeof(packet2));
587
        mavlink_msg_cmd_airspeed_chng_pack(system_id, component_id, &msg , packet1.target , packet1.spCmd );
588
        mavlink_msg_cmd_airspeed_chng_decode(&msg, &packet2);
589
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
590
 
591
        memset(&packet2, 0, sizeof(packet2));
592
        mavlink_msg_cmd_airspeed_chng_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.target , packet1.spCmd );
593
        mavlink_msg_cmd_airspeed_chng_decode(&msg, &packet2);
594
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
595
 
596
        memset(&packet2, 0, sizeof(packet2));
597
        mavlink_msg_to_send_buffer(buffer, &msg);
598
        for (i=0; i<mavlink_msg_get_send_buffer_length(&msg); i++) {
599
                comm_send_ch(MAVLINK_COMM_0, buffer[i]);
600
        }
601
        mavlink_msg_cmd_airspeed_chng_decode(last_msg, &packet2);
602
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
603
 
604
        memset(&packet2, 0, sizeof(packet2));
605
        mavlink_msg_cmd_airspeed_chng_send(MAVLINK_COMM_1 , packet1.target , packet1.spCmd );
606
        mavlink_msg_cmd_airspeed_chng_decode(last_msg, &packet2);
607
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
608
}
609
 
610
static void mavlink_test_cmd_airspeed_ack(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
611
{
612
        mavlink_message_t msg;
613
        uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
614
        uint16_t i;
615
        mavlink_cmd_airspeed_ack_t packet_in = {
616
                17.0,
617
        17,
618
        };
619
        mavlink_cmd_airspeed_ack_t packet1, packet2;
620
        memset(&packet1, 0, sizeof(packet1));
621
                packet1.spCmd = packet_in.spCmd;
622
                packet1.ack = packet_in.ack;
623
 
624
 
625
 
626
        memset(&packet2, 0, sizeof(packet2));
627
        mavlink_msg_cmd_airspeed_ack_encode(system_id, component_id, &msg, &packet1);
628
        mavlink_msg_cmd_airspeed_ack_decode(&msg, &packet2);
629
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
630
 
631
        memset(&packet2, 0, sizeof(packet2));
632
        mavlink_msg_cmd_airspeed_ack_pack(system_id, component_id, &msg , packet1.spCmd , packet1.ack );
633
        mavlink_msg_cmd_airspeed_ack_decode(&msg, &packet2);
634
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
635
 
636
        memset(&packet2, 0, sizeof(packet2));
637
        mavlink_msg_cmd_airspeed_ack_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.spCmd , packet1.ack );
638
        mavlink_msg_cmd_airspeed_ack_decode(&msg, &packet2);
639
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
640
 
641
        memset(&packet2, 0, sizeof(packet2));
642
        mavlink_msg_to_send_buffer(buffer, &msg);
643
        for (i=0; i<mavlink_msg_get_send_buffer_length(&msg); i++) {
644
                comm_send_ch(MAVLINK_COMM_0, buffer[i]);
645
        }
646
        mavlink_msg_cmd_airspeed_ack_decode(last_msg, &packet2);
647
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
648
 
649
        memset(&packet2, 0, sizeof(packet2));
650
        mavlink_msg_cmd_airspeed_ack_send(MAVLINK_COMM_1 , packet1.spCmd , packet1.ack );
651
        mavlink_msg_cmd_airspeed_ack_decode(last_msg, &packet2);
652
        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
653
}
654
 
655
static void mavlink_test_sensesoar(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
656
{
657
        mavlink_test_obs_position(system_id, component_id, last_msg);
658
        mavlink_test_obs_velocity(system_id, component_id, last_msg);
659
        mavlink_test_obs_attitude(system_id, component_id, last_msg);
660
        mavlink_test_obs_wind(system_id, component_id, last_msg);
661
        mavlink_test_obs_air_velocity(system_id, component_id, last_msg);
662
        mavlink_test_obs_bias(system_id, component_id, last_msg);
663
        mavlink_test_obs_qff(system_id, component_id, last_msg);
664
        mavlink_test_obs_air_temp(system_id, component_id, last_msg);
665
        mavlink_test_filt_rot_vel(system_id, component_id, last_msg);
666
        mavlink_test_llc_out(system_id, component_id, last_msg);
667
        mavlink_test_pm_elec(system_id, component_id, last_msg);
668
        mavlink_test_sys_stat(system_id, component_id, last_msg);
669
        mavlink_test_cmd_airspeed_chng(system_id, component_id, last_msg);
670
        mavlink_test_cmd_airspeed_ack(system_id, component_id, last_msg);
671
}
672
 
673
#ifdef __cplusplus
674
}
675
#endif // __cplusplus
676
#endif // SENSESOAR_TESTSUITE_H