GCC Code Coverage Report


Directory: ./
File: tmp_project/PhoenixDataStream/TESTS/TEST_SHADOK/main.cpp
Date: 2025-03-14 12:18:05
Exec Total Coverage
Lines: 47 47 100.0%
Branches: 75 77 97.4%

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 "Shadok.h"
9
10 ///Test the Shadok size
11 1 void testShadokSize(){
12
1/1
✓ Branch 1 taken 1 times.
1 Shadok s;
13
1/1
✓ Branch 1 taken 1 times.
1 s.setAge(3);
14
2/2
✓ Branch 2 taken 1 times.
✓ Branch 5 taken 1 times.
1 s.setName("Shadoko");
15
16
1/1
✓ Branch 1 taken 1 times.
1 size_t shadokSize(data_size(s));
17
4/4
✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 13 taken 1 times.
1 data_stream_assert(shadokSize == 19lu);
18 1 }
19
20 ///Test the Shadok message
21 1 void testShadokMessage(){
22
1/1
✓ Branch 1 taken 1 times.
1 Shadok s;
23
1/1
✓ Branch 1 taken 1 times.
1 s.setAge(3);
24
2/2
✓ Branch 2 taken 1 times.
✓ Branch 5 taken 1 times.
1 s.setName("Shadoko");
25
26
2/2
✓ Branch 2 taken 1 times.
✓ Branch 5 taken 1 times.
1 DataStreamMsg messageIn(data_size(s));
27 1 DataStreamIter iter = (DataStreamIter)messageIn.data();
28
5/5
✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 13 taken 1 times.
✓ Branch 16 taken 1 times.
1 data_stream_assert(data_message_save(iter, s));
29
30 ///Load shadok from message
31
1/1
✓ Branch 1 taken 1 times.
1 Shadok out;
32 1 DataStreamIter iterOut = (DataStreamIter)messageIn.data();
33
5/5
✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 13 taken 1 times.
✓ Branch 16 taken 1 times.
1 data_stream_assert(data_message_load(iterOut, out));
34
35
6/6
✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 13 taken 1 times.
✓ Branch 16 taken 1 times.
✓ Branch 19 taken 1 times.
1 data_stream_assert(s.getAge() == out.getAge());
36
6/6
✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 13 taken 1 times.
✓ Branch 16 taken 1 times.
✓ Branch 20 taken 1 times.
1 data_stream_assert(s.getName() == out.getName());
37 1 }
38
39 ///Test the Shadok message
40 1 void testShadokFile(){
41
1/1
✓ Branch 1 taken 1 times.
1 Shadok s;
42
1/1
✓ Branch 1 taken 1 times.
1 s.setAge(3);
43
2/2
✓ Branch 2 taken 1 times.
✓ Branch 5 taken 1 times.
1 s.setName("Shadoko");
44
45
1/1
✓ Branch 2 taken 1 times.
1 std::string fileName("shadok.data");
46
1/1
✓ Branch 1 taken 1 times.
1 data_save(fileName, s);
47
48 ///Load shadok from message
49
1/1
✓ Branch 1 taken 1 times.
1 Shadok out;
50
1/1
✓ Branch 1 taken 1 times.
1 data_load(fileName, out);
51
52
6/6
✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 13 taken 1 times.
✓ Branch 16 taken 1 times.
✓ Branch 19 taken 1 times.
1 data_stream_assert(s.getAge() == out.getAge());
53
6/6
✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 13 taken 1 times.
✓ Branch 16 taken 1 times.
✓ Branch 20 taken 1 times.
1 data_stream_assert(s.getName() == out.getName());
54 1 }
55
56 ///Check the shadok equality as constant
57 /** @param s1 : Shadok to be checked
58 * @param s2 : Shadok to be checked
59 * @return true if the two Shadok are equal, false otherwise
60 */
61 1 bool checkEqualityConst(const Shadok & s1, const Shadok & s2){
62
2/4
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
1 return s1.getName() == s2.getName() && s1.getAge() == s2.getAge();
63 }
64
65 ///Some basic Shadok test
66 1 void testShadok(){
67
1/1
✓ Branch 1 taken 1 times.
1 Shadok s;
68
1/1
✓ Branch 1 taken 1 times.
1 Shadok p(s);
69
1/1
✓ Branch 1 taken 1 times.
1 Shadok q;
70
1/1
✓ Branch 1 taken 1 times.
1 q = s;
71
6/6
✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 13 taken 1 times.
✓ Branch 16 taken 1 times.
✓ Branch 19 taken 1 times.
1 data_stream_assert(s.getAge() == q.getAge());
72
5/5
✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 13 taken 1 times.
✓ Branch 16 taken 1 times.
1 data_stream_assert(checkEqualityConst(s, q));
73 1 }
74
75 1 int main(int argc, char** argv){
76 1 testShadokSize();
77 1 testShadokMessage();
78 1 testShadokFile();
79 1 testShadok();
80 1 return 0;
81 }
82
83