GCC Code Coverage Report


Directory: ./
File: TESTS/TEST_DATA_MESSAGE_SIMPLE_TYPE/main.cpp
Date: 2026-01-15 15:51:44
Exec Total Coverage
Lines: 38 38 100.0%
Functions: 15 15 100.0%
Branches: 59 59 100.0%

Line Branch Exec Source
1 /***************************************
2 Auteur : Pierre Aubert
3 Mail : pierre.aubert@lapp.in2p3.fr
4 Licence : CeCILL-C
5 ****************************************/
6
7 #include "data_stream_assert.h"
8 #include "data_stream_check_value.h"
9
10 #include "data_all.h"
11
12 ///Check the sime data message of a given type
13 /** @param nameOfType : name of the type to be checked
14 * assert on fail
15 */
16 template<typename T>
17 12 void checkSimpleDataMessage(const std::string & nameOfType){
18 12 T data(42lu);
19
2/2
✓ Branch 0 (4→5) taken 12 times.
✓ Branch 2 (5→6) taken 12 times.
12 DataStreamMsg message(data_size(data));
20 //Put data in message
21 12 DataStreamIter iter = (DataStreamIter)message.data();
22
5/5
✓ Branch 0 (10→11) taken 12 times.
✓ Branch 2 (13→14) taken 12 times.
✓ Branch 4 (16→17) taken 12 times.
✓ Branch 6 (17→18) taken 12 times.
✓ Branch 8 (18→19) taken 12 times.
60 data_stream_assert(data_message_save(iter, data)); //Save the message
23 12 DataStreamIter loadIter = (DataStreamIter)message.data();
24 12 T outData(0lu);
25
5/5
✓ Branch 0 (28→29) taken 12 times.
✓ Branch 2 (31→32) taken 12 times.
✓ Branch 4 (34→35) taken 12 times.
✓ Branch 6 (35→36) taken 12 times.
✓ Branch 8 (36→37) taken 12 times.
72 data_stream_assert(data_message_load(loadIter, outData)); //Load the message
26
5/5
✓ Branch 0 (45→46) taken 12 times.
✓ Branch 2 (48→49) taken 12 times.
✓ Branch 4 (51→52) taken 12 times.
✓ Branch 6 (52→53) taken 12 times.
✓ Branch 8 (53→54) taken 12 times.
60 data_stream_assert(checkValue(nameOfType, data, outData));
27 12 }
28
29 ///Test if data size is Ok
30 1 void testSimpleDataMessage(){
31
2/2
✓ Branch 0 (4→5) taken 1 times.
✓ Branch 2 (5→6) taken 1 times.
2 checkSimpleDataMessage<long unsigned int>("long unsigned int");
32
2/2
✓ Branch 0 (10→11) taken 1 times.
✓ Branch 2 (11→12) taken 1 times.
2 checkSimpleDataMessage<unsigned int>("unsigned int");
33
2/2
✓ Branch 0 (16→17) taken 1 times.
✓ Branch 2 (17→18) taken 1 times.
2 checkSimpleDataMessage<unsigned short>("unsigned short");
34
2/2
✓ Branch 0 (22→23) taken 1 times.
✓ Branch 2 (23→24) taken 1 times.
2 checkSimpleDataMessage<unsigned char>("unsigned char");
35
36
2/2
✓ Branch 0 (28→29) taken 1 times.
✓ Branch 2 (29→30) taken 1 times.
2 checkSimpleDataMessage<long int>("long int");
37
2/2
✓ Branch 0 (34→35) taken 1 times.
✓ Branch 2 (35→36) taken 1 times.
2 checkSimpleDataMessage<int>("int");
38
2/2
✓ Branch 0 (40→41) taken 1 times.
✓ Branch 2 (41→42) taken 1 times.
2 checkSimpleDataMessage<short>("short");
39
2/2
✓ Branch 0 (46→47) taken 1 times.
✓ Branch 2 (47→48) taken 1 times.
2 checkSimpleDataMessage<char>("char");
40
41
2/2
✓ Branch 0 (52→53) taken 1 times.
✓ Branch 2 (53→54) taken 1 times.
2 checkSimpleDataMessage<int8_t>("int8_t");
42
43
2/2
✓ Branch 0 (58→59) taken 1 times.
✓ Branch 2 (59→60) taken 1 times.
2 checkSimpleDataMessage<bool>("bool");
44
2/2
✓ Branch 0 (64→65) taken 1 times.
✓ Branch 2 (65→66) taken 1 times.
2 checkSimpleDataMessage<float>("float");
45
2/2
✓ Branch 0 (70→71) taken 1 times.
✓ Branch 2 (71→72) taken 1 times.
1 checkSimpleDataMessage<double>("double");
46 1 }
47
48 ///Test if data size is Ok
49 1 void testStringDataMessage(){
50
1/1
✓ Branch 0 (4→5) taken 1 times.
2 std::string str("One thing to say");
51
2/2
✓ Branch 0 (8→9) taken 1 times.
✓ Branch 2 (9→10) taken 1 times.
1 DataStreamMsg messageStr(data_size(str));
52 1 DataStreamIter iterStr = (DataStreamIter)messageStr.data();
53
5/5
✓ Branch 0 (14→15) taken 1 times.
✓ Branch 2 (17→18) taken 1 times.
✓ Branch 4 (20→21) taken 1 times.
✓ Branch 6 (21→22) taken 1 times.
✓ Branch 8 (22→23) taken 1 times.
6 data_stream_assert(data_message_save(iterStr, str)); //Save the message
54
1/1
✓ Branch 0 (31→32) taken 1 times.
1 std::string outStr("");
55 1 DataStreamIter loadIterStr = (DataStreamIter)messageStr.data();
56
5/5
✓ Branch 0 (36→37) taken 1 times.
✓ Branch 2 (39→40) taken 1 times.
✓ Branch 4 (42→43) taken 1 times.
✓ Branch 6 (43→44) taken 1 times.
✓ Branch 8 (44→45) taken 1 times.
6 data_stream_assert(data_message_load(loadIterStr, outStr)); //Load the message
57
58 // std::cout << "testStringDataMessage : outStr("<<outStr<<"), str("<<str<<")" << std::endl;
59
4/4
✓ Branch 0 (53→54) taken 1 times.
✓ Branch 2 (56→57) taken 1 times.
✓ Branch 4 (59→60) taken 1 times.
✓ Branch 6 (61→62) taken 1 times.
5 data_stream_assert(str == outStr);
60 1 }
61
62 1 int main(int argc, char** argv){
63 1 testSimpleDataMessage();
64 1 testStringDataMessage();
65 1 return 0;
66 }
67
68