GCC Code Coverage Report


Directory: ./
File: TESTS/TESTS_REPRESENTATION/TEST_REPRESENTATION/TEST_MESSAGE/main.cpp
Date: 2026-05-19 15:42:59
Exec Total Coverage
Lines: 32 32 100.0%
Functions: 5 5 100.0%
Branches: 19 24 79.2%

Line Branch Exec Source
1 /***************************************
2 Auteur : Pierre Aubert
3 Mail : pierre.aubert@lapp.in2p3.fr
4 Licence : CeCILL-C
5 ****************************************/
6
7 #include "assert.h"
8
9 #include "Representation.h"
10
11 using namespace Swarm;
12
13 ///Check the equality between two Message classes
14 /** @param var : variable to be checked
15 * @param reference : reference
16 * @return true on success, false otherwise
17 */
18 2 bool checkMessageEquality(Message & var, Message & reference){
19 2 bool b(true);
20 2 b &= var.getId() == reference.getId();
21 2 b &= var.getIsConfirmationNeeded() == reference.getIsConfirmationNeeded();
22 2 b &= var.getSender() == reference.getSender();
23 2 return b;
24 }
25
26 ///Check the equality between two Message classes
27 /** @param var : variable to be checked
28 * @param reference : reference
29 * @return true on success, false otherwise
30 */
31 2 bool checkMessageEqualityConst(const Message & var, const Message & reference){
32 2 bool b(true);
33 2 b &= var.getId() == reference.getId();
34 2 b &= var.getIsConfirmationNeeded() == reference.getIsConfirmationNeeded();
35 2 b &= var.getSender() == reference.getSender();
36 2 return b;
37 }
38
39 ///Check copy of class Message
40 1 void checkMessageCopy(){
41
1/1
✓ Branch 0 (2→3) taken 1 times.
1 Message reference;
42 //Let's use the setters
43
1/1
✓ Branch 0 (3→4) taken 1 times.
1 reference.setId(3423420lu);
44
1/1
✓ Branch 0 (4→5) taken 1 times.
1 reference.setIsConfirmationNeeded(true);
45
2/2
✓ Branch 0 (5→6) taken 1 times.
✓ Branch 2 (6→7) taken 1 times.
1 reference.setSender("Some string");
46
1/1
✓ Branch 0 (8→9) taken 1 times.
1 Message varCopy(reference);
47
1/1
✓ Branch 0 (9→10) taken 1 times.
1 Message varEqual;
48
1/1
✓ Branch 0 (10→11) taken 1 times.
1 varEqual = reference;
49
2/3
✓ Branch 0 (11→12) taken 1 times.
✗ Branch 2 (12→13) not taken.
✓ Branch 3 (12→14) taken 1 times.
1 assert(checkMessageEquality(varCopy, reference));
50
2/3
✓ Branch 0 (14→15) taken 1 times.
✗ Branch 2 (15→16) not taken.
✓ Branch 3 (15→17) taken 1 times.
1 assert(checkMessageEqualityConst(varCopy, reference));
51
2/3
✓ Branch 0 (17→18) taken 1 times.
✗ Branch 2 (18→19) not taken.
✓ Branch 3 (18→20) taken 1 times.
1 assert(checkMessageEquality(varEqual, reference));
52
2/3
✓ Branch 0 (20→21) taken 1 times.
✗ Branch 2 (21→22) not taken.
✓ Branch 3 (21→23) taken 1 times.
1 assert(checkMessageEqualityConst(varEqual, reference));
53 1 }
54
55 ///Check TypeStream of class Message
56 1 void checkMessageTypeStream(){
57
3/4
✓ Branch 0 (2→3) taken 1 times.
✓ Branch 2 (3→4) taken 1 times.
✗ Branch 4 (4→5) not taken.
✓ Branch 5 (4→6) taken 1 times.
1 assert(phoenix_getTypeToStr<Message>() == "Message");
58 1 }
59
60 1 int main(int argc, char ** argv){
61 1 checkMessageCopy();
62 1 checkMessageTypeStream();
63 1 return 0;
64 }
65