GCC Code Coverage Report


Directory: ./
File: TESTS/TEST_DAEMONS/TEST_BASEDAEMON/main.cpp
Date: 2026-05-19 15:42:59
Exec Total Coverage
Lines: 249 250 99.6%
Functions: 21 21 100.0%
Branches: 609 643 94.7%

Line Branch Exec Source
1
2 /***************************************
3 Auteur : Pierre Aubert
4 Mail : pierre.aubert@lapp.in2p3.fr
5 Licence : CeCILL-C
6 ****************************************/
7
8 #include <iostream>
9 #include "phoenix_assert.h"
10 #include "BaseDaemon.h"
11 #include "Representation.h"
12
13 using namespace Swarm;
14
15 ///Get a BaseDaemon with a message to confirm
16 1 void testBaseDaemonGetMessageToConfirm() {
17
1/1
✓ Branch 0 (2→3) taken 1 times.
1 BaseDaemon daemon;
18
1/1
✓ Branch 0 (3→4) taken 1 times.
1 Message msg;
19
1/1
✓ Branch 0 (4→5) taken 1 times.
1 msg.setId(123);
20
1/1
✓ Branch 0 (6→7) taken 1 times.
1 msg.setSendTime(time(nullptr));
21
3/3
✓ Branch 0 (7→8) taken 1 times.
✓ Branch 2 (8→9) taken 1 times.
✓ Branch 4 (9→10) taken 1 times.
1 msg.getVecRecver().push_back("receiver1");
22
1/1
✓ Branch 0 (11→12) taken 1 times.
1 daemon.addMessageToConfirm(msg);
23
24
1/1
✓ Branch 0 (12→13) taken 1 times.
1 Message retrieved;
25
5/5
✓ Branch 0 (13→14) taken 1 times.
✓ Branch 2 (16→17) taken 1 times.
✓ Branch 4 (19→20) taken 1 times.
✓ Branch 6 (22→23) taken 1 times.
✓ Branch 8 (23→24) taken 1 times.
6 phoenix_assert(daemon.getMessageToConfirm(retrieved, 123));
26
5/5
✓ Branch 0 (30→31) taken 1 times.
✓ Branch 2 (33→34) taken 1 times.
✓ Branch 4 (36→37) taken 1 times.
✓ Branch 6 (39→40) taken 1 times.
✓ Branch 8 (40→41) taken 1 times.
6 phoenix_assert(retrieved.getId() == 123);
27
28
1/1
✓ Branch 0 (47→48) taken 1 times.
1 Message notFound;
29
5/5
✓ Branch 0 (48→49) taken 1 times.
✓ Branch 2 (51→52) taken 1 times.
✓ Branch 4 (54→55) taken 1 times.
✓ Branch 6 (57→58) taken 1 times.
✓ Branch 8 (58→59) taken 1 times.
6 phoenix_assert(!daemon.getMessageToConfirm(notFound, 999));
30 1 }
31
32 ///Test BaseDaemon with a message to process
33 /** @param fileName : configuration of the Daemon
34 */
35 1 void testBaseDaemonProcessConfirmedMessage(const PPath & fileName) {
36
1/1
✓ Branch 0 (2→3) taken 1 times.
1 BaseDaemon daemon;
37
2/2
✓ Branch 0 (3→4) taken 1 times.
✓ Branch 2 (4→5) taken 1 times.
1 daemon.load(fileName, "main");
38
39
1/1
✓ Branch 0 (6→7) taken 1 times.
1 Message msg;
40
1/1
✓ Branch 0 (7→8) taken 1 times.
1 msg.setId(456);
41
1/1
✓ Branch 0 (8→9) taken 1 times.
1 msg.setSendTime(3lu);
42
2/2
✓ Branch 0 (9→10) taken 1 times.
✓ Branch 2 (10→11) taken 1 times.
1 msg.setData(Data());
43
3/3
✓ Branch 0 (12→13) taken 1 times.
✓ Branch 2 (13→14) taken 1 times.
✓ Branch 4 (14→15) taken 1 times.
1 msg.getVecRecver().push_back("receiver2");
44
1/1
✓ Branch 0 (16→17) taken 1 times.
1 daemon.addMessageToConfirm(msg);
45
46 // Confirm the message
47
1/1
✓ Branch 0 (17→18) taken 1 times.
1 daemon.processConfirmedMessage(456, 5lu);
48
1/1
✓ Branch 0 (18→19) taken 1 times.
1 Message shouldNotExist;
49
5/5
✓ Branch 0 (19→20) taken 1 times.
✓ Branch 2 (22→23) taken 1 times.
✓ Branch 4 (25→26) taken 1 times.
✓ Branch 6 (28→29) taken 1 times.
✓ Branch 8 (29→30) taken 1 times.
6 phoenix_assert(!daemon.getMessageToConfirm(shouldNotExist, 456));
50 1 }
51
52 ///Test BaseDaemon with missing daemon section in TOML string config
53 1 void testBaseDaemonMissingDaemonSectionTomlString(){
54
1/1
✓ Branch 0 (2→3) taken 1 times.
1 PString invalidTomlConfig = R"(
55 [other_section]
56 name = "test"
57 value = 42
58
59 [another_section]
60 host = "localhost"
61 )";
62
1/1
✓ Branch 0 (3→4) taken 1 times.
1 BaseDaemon daemon;
63
7/9
✓ Branch 0 (4→5) taken 1 times.
✗ Branch 2 (5→6) not taken.
✓ Branch 4 (10→11) taken 1 times.
✓ Branch 6 (13→14) taken 1 times.
✓ Branch 8 (16→17) taken 1 times.
✓ Branch 10 (17→18) taken 1 times.
✗ Branch 12 (30→31) not taken.
✓ Branch 13 (30→32) taken 1 times.
✓ Branch 14 (33→8) taken 1 times.
7 PHOENIX_EXCEPTION_TYPE_ASSERT(Phoenix::ConfigException, daemon.load(invalidTomlConfig, "main", ConfigFormat::TOML));
64 1 }
65
66 ///Test BaseDaemon with missing daemon section in YAML string config
67 1 void testBaseDaemonMissingDaemonSectionYmlString(){
68
1/1
✓ Branch 0 (2→3) taken 1 times.
1 PString invalidYmlConfig = R"(
69 other_section:
70 name: "test"
71 value: 42
72
73 another_section:
74 host: "localhost"
75 )";
76
1/1
✓ Branch 0 (3→4) taken 1 times.
1 BaseDaemon daemon;
77
7/9
✓ Branch 0 (4→5) taken 1 times.
✗ Branch 2 (5→6) not taken.
✓ Branch 4 (10→11) taken 1 times.
✓ Branch 6 (13→14) taken 1 times.
✓ Branch 8 (16→17) taken 1 times.
✓ Branch 10 (17→18) taken 1 times.
✗ Branch 12 (30→31) not taken.
✓ Branch 13 (30→32) taken 1 times.
✓ Branch 14 (33→8) taken 1 times.
7 PHOENIX_EXCEPTION_TYPE_ASSERT(Phoenix::ConfigException, daemon.load(invalidYmlConfig, "main", ConfigFormat::YAML));
78 1 }
79
80 ///Test BaseDaemon with missing daemon section in JSON string config
81 1 void testBaseDaemonMissingDaemonSectionJsonString(){
82
1/1
✓ Branch 0 (2→3) taken 1 times.
1 PString invalidJsonConfig = R"({
83 "other_section": {
84 "name": "test",
85 "value": 42
86 },
87 "another_section": {
88 "host": "localhost"
89 }
90 })";
91
1/1
✓ Branch 0 (3→4) taken 1 times.
1 BaseDaemon daemon;
92
7/9
✓ Branch 0 (4→5) taken 1 times.
✗ Branch 2 (5→6) not taken.
✓ Branch 4 (10→11) taken 1 times.
✓ Branch 6 (13→14) taken 1 times.
✓ Branch 8 (16→17) taken 1 times.
✓ Branch 10 (17→18) taken 1 times.
✗ Branch 12 (30→31) not taken.
✓ Branch 13 (30→32) taken 1 times.
✓ Branch 14 (33→8) taken 1 times.
7 PHOENIX_EXCEPTION_TYPE_ASSERT(Phoenix::ConfigException, daemon.load(invalidJsonConfig, "main", ConfigFormat::JSON));
93 1 }
94
95 ///Test BaseDaemon with missing daemon section in TOML file
96 1 void testBaseDaemonMissingDaemonSectionTomlFile(){
97
2/2
✓ Branch 0 (2→3) taken 1 times.
✓ Branch 2 (3→4) taken 1 times.
1 PPath tempFile = PPath("test_no_daemon_section.toml");
98
1/1
✓ Branch 0 (5→6) taken 1 times.
1 PString invalidTomlConfig = R"(
99 [other_section]
100 name = "test"
101 value = 42
102 )";
103
1/1
✓ Branch 0 (6→7) taken 1 times.
1 tempFile.saveFileContent(invalidTomlConfig);
104
1/1
✓ Branch 0 (7→8) taken 1 times.
1 BaseDaemon daemon;
105
7/9
✓ Branch 0 (8→9) taken 1 times.
✗ Branch 2 (9→10) not taken.
✓ Branch 4 (14→15) taken 1 times.
✓ Branch 6 (17→18) taken 1 times.
✓ Branch 8 (20→21) taken 1 times.
✓ Branch 10 (21→22) taken 1 times.
✗ Branch 12 (38→39) not taken.
✓ Branch 13 (38→40) taken 1 times.
✓ Branch 14 (41→12) taken 1 times.
7 PHOENIX_EXCEPTION_TYPE_ASSERT(Phoenix::ConfigException, daemon.load(tempFile, "main"));
106 1 }
107
108 ///Test BaseDaemon with missing daemon section in YML file
109 1 void testBaseDaemonMissingDaemonSectionYmlFile(){
110
2/2
✓ Branch 0 (2→3) taken 1 times.
✓ Branch 2 (3→4) taken 1 times.
1 PPath tempFile = PPath("test_no_daemon_section.yml");
111
1/1
✓ Branch 0 (5→6) taken 1 times.
1 PString invalidYmlConfig = R"(
112 other_section:
113 name: "test"
114 value: 42
115 )";
116
1/1
✓ Branch 0 (6→7) taken 1 times.
1 tempFile.saveFileContent(invalidYmlConfig);
117
1/1
✓ Branch 0 (7→8) taken 1 times.
1 BaseDaemon daemon;
118
7/9
✓ Branch 0 (8→9) taken 1 times.
✗ Branch 2 (9→10) not taken.
✓ Branch 4 (14→15) taken 1 times.
✓ Branch 6 (17→18) taken 1 times.
✓ Branch 8 (20→21) taken 1 times.
✓ Branch 10 (21→22) taken 1 times.
✗ Branch 12 (38→39) not taken.
✓ Branch 13 (38→40) taken 1 times.
✓ Branch 14 (41→12) taken 1 times.
7 PHOENIX_EXCEPTION_TYPE_ASSERT(Phoenix::ConfigException, daemon.load(tempFile, "main"));
119 1 }
120
121 ///Test BaseDaemon with missing daemon section in JSON file
122 1 void testBaseDaemonMissingDaemonSectionJsonFile(){
123
2/2
✓ Branch 0 (2→3) taken 1 times.
✓ Branch 2 (3→4) taken 1 times.
1 PPath tempFile = PPath("test_no_daemon_section.json");
124
1/1
✓ Branch 0 (5→6) taken 1 times.
1 PString invalidJsonConfig = R"({
125 "other_section": {
126 "name": "test",
127 "value": 42
128 }
129 })";
130
1/1
✓ Branch 0 (6→7) taken 1 times.
1 tempFile.saveFileContent(invalidJsonConfig);
131
1/1
✓ Branch 0 (7→8) taken 1 times.
1 BaseDaemon daemon;
132
7/9
✓ Branch 0 (8→9) taken 1 times.
✗ Branch 2 (9→10) not taken.
✓ Branch 4 (14→15) taken 1 times.
✓ Branch 6 (17→18) taken 1 times.
✓ Branch 8 (20→21) taken 1 times.
✓ Branch 10 (21→22) taken 1 times.
✗ Branch 12 (38→39) not taken.
✓ Branch 13 (38→40) taken 1 times.
✓ Branch 14 (41→12) taken 1 times.
7 PHOENIX_EXCEPTION_TYPE_ASSERT(Phoenix::ConfigException, daemon.load(tempFile, "main"));
133 1 }
134
135 ///Test the load configuration of a BaseDaemon
136 /** @param fileName : name of the configuration toml file
137 */
138 1 void testBaseDaemonLoadConfigToml(const PPath & fileName){
139
1/1
✓ Branch 0 (2→3) taken 1 times.
1 BaseDaemon daemon;
140
2/2
✓ Branch 0 (3→4) taken 1 times.
✓ Branch 2 (4→5) taken 1 times.
1 daemon.load(fileName, "main");
141
6/6
✓ Branch 0 (6→7) taken 1 times.
✓ Branch 2 (7→8) taken 1 times.
✓ Branch 4 (10→11) taken 1 times.
✓ Branch 6 (13→14) taken 1 times.
✓ Branch 8 (16→17) taken 1 times.
✓ Branch 10 (17→18) taken 1 times.
7 phoenix_assert(daemon.isDaemonExist("other"));
142
1/1
✓ Branch 0 (25→26) taken 1 times.
1 BaseDaemon daemon2;
143
7/9
✓ Branch 0 (26→27) taken 1 times.
✗ Branch 2 (27→28) not taken.
✓ Branch 4 (32→33) taken 1 times.
✓ Branch 6 (35→36) taken 1 times.
✓ Branch 8 (38→39) taken 1 times.
✓ Branch 10 (39→40) taken 1 times.
✗ Branch 12 (102→103) not taken.
✓ Branch 13 (102→104) taken 1 times.
✓ Branch 14 (105→30) taken 1 times.
7 PHOENIX_EXCEPTION_TYPE_ASSERT(Phoenix::ConfigException, daemon2.load(fileName, "not_in_in_the_list"));
144
1/1
✓ Branch 0 (46→47) taken 1 times.
1 BaseDaemon daemon3;
145
9/11
✓ Branch 0 (47→48) taken 1 times.
✓ Branch 2 (48→49) taken 1 times.
✓ Branch 4 (49→50) taken 1 times.
✗ Branch 6 (50→51) not taken.
✓ Branch 8 (57→58) taken 1 times.
✓ Branch 10 (60→61) taken 1 times.
✓ Branch 12 (63→64) taken 1 times.
✓ Branch 14 (64→65) taken 1 times.
✗ Branch 16 (133→134) not taken.
✓ Branch 17 (133→135) taken 1 times.
✓ Branch 18 (136→55) taken 1 times.
9 PHOENIX_EXCEPTION_TYPE_ASSERT(Phoenix::ParserException, daemon3.load(PPath("unexisting_config.toml"), "main"));
146 1 }
147
148 ///Test the load configuration of a BaseDaemon from a string TOML
149 /** @param fileName : name of the configuration TOML file
150 */
151 1 void testBaseDaemonLoadConfigTomlString(const PPath & fileName){
152 // Read toml file in a string
153
1/1
✓ Branch 0 (2→3) taken 1 times.
1 PString tomlString = fileName.loadFileContent();
154
1/1
✓ Branch 0 (3→4) taken 1 times.
1 BaseDaemon daemon;
155
2/2
✓ Branch 0 (4→5) taken 1 times.
✓ Branch 2 (5→6) taken 1 times.
1 daemon.load(tomlString, "main", ConfigFormat::TOML);
156
6/6
✓ Branch 0 (7→8) taken 1 times.
✓ Branch 2 (8→9) taken 1 times.
✓ Branch 4 (11→12) taken 1 times.
✓ Branch 6 (14→15) taken 1 times.
✓ Branch 8 (17→18) taken 1 times.
✓ Branch 10 (18→19) taken 1 times.
7 phoenix_assert(daemon.isDaemonExist("other"));
157
1/1
✓ Branch 0 (26→27) taken 1 times.
1 BaseDaemon daemon2;
158
7/9
✓ Branch 0 (27→28) taken 1 times.
✗ Branch 2 (28→29) not taken.
✓ Branch 4 (33→34) taken 1 times.
✓ Branch 6 (36→37) taken 1 times.
✓ Branch 8 (39→40) taken 1 times.
✓ Branch 10 (40→41) taken 1 times.
✗ Branch 12 (78→79) not taken.
✓ Branch 13 (78→80) taken 1 times.
✓ Branch 14 (81→31) taken 1 times.
7 PHOENIX_EXCEPTION_TYPE_ASSERT(Phoenix::ConfigException, daemon2.load(tomlString, "not_in_in_the_list", ConfigFormat::TOML));
159 1 }
160
161 ///Test the load configuration of a BaseDaemon
162 /** @param fileName : name of the configuration yml file
163 */
164 1 void testBaseDaemonLoadConfigYml(const PPath & fileName){
165
1/1
✓ Branch 0 (2→3) taken 1 times.
1 BaseDaemon daemon;
166
2/2
✓ Branch 0 (3→4) taken 1 times.
✓ Branch 2 (4→5) taken 1 times.
1 daemon.load(fileName, "main");
167
6/6
✓ Branch 0 (6→7) taken 1 times.
✓ Branch 2 (7→8) taken 1 times.
✓ Branch 4 (10→11) taken 1 times.
✓ Branch 6 (13→14) taken 1 times.
✓ Branch 8 (16→17) taken 1 times.
✓ Branch 10 (17→18) taken 1 times.
7 phoenix_assert(daemon.isDaemonExist("other"));
168
1/1
✓ Branch 0 (25→26) taken 1 times.
1 BaseDaemon daemon2;
169
7/9
✓ Branch 0 (26→27) taken 1 times.
✗ Branch 2 (27→28) not taken.
✓ Branch 4 (32→33) taken 1 times.
✓ Branch 6 (35→36) taken 1 times.
✓ Branch 8 (38→39) taken 1 times.
✓ Branch 10 (39→40) taken 1 times.
✗ Branch 12 (128→129) not taken.
✓ Branch 13 (128→130) taken 1 times.
✓ Branch 14 (131→30) taken 1 times.
7 PHOENIX_EXCEPTION_TYPE_ASSERT(Phoenix::ConfigException, daemon2.load(fileName, "not_in_in_the_list"));
170
1/1
✓ Branch 0 (46→47) taken 1 times.
1 BaseDaemon daemon3;
171
9/11
✓ Branch 0 (47→48) taken 1 times.
✓ Branch 2 (48→49) taken 1 times.
✓ Branch 4 (49→50) taken 1 times.
✗ Branch 6 (50→51) not taken.
✓ Branch 8 (57→58) taken 1 times.
✓ Branch 10 (60→61) taken 1 times.
✓ Branch 12 (63→64) taken 1 times.
✓ Branch 14 (64→65) taken 1 times.
✗ Branch 16 (159→160) not taken.
✓ Branch 17 (159→161) taken 1 times.
✓ Branch 18 (162→55) taken 1 times.
9 PHOENIX_EXCEPTION_TYPE_ASSERT(Phoenix::ParserException, daemon3.load(PPath("unexisting_config.yml"), "main"));
172
1/1
✓ Branch 0 (71→72) taken 1 times.
1 BaseDaemon daemon4;
173
9/11
✓ Branch 0 (72→73) taken 1 times.
✓ Branch 2 (73→74) taken 1 times.
✓ Branch 4 (74→75) taken 1 times.
✗ Branch 6 (75→76) not taken.
✓ Branch 8 (82→83) taken 1 times.
✓ Branch 10 (85→86) taken 1 times.
✓ Branch 12 (88→89) taken 1 times.
✓ Branch 14 (89→90) taken 1 times.
✗ Branch 16 (190→191) not taken.
✓ Branch 17 (190→192) taken 1 times.
✓ Branch 18 (193→80) taken 1 times.
9 PHOENIX_EXCEPTION_TYPE_ASSERT(Phoenix::ParserException, daemon4.load(PPath("file.nonextension"), "main"));
174 1 }
175
176 ///Test the load configuration of a BaseDaemon from a string YAML
177 /** @param fileName : name of the configuration YAML file
178 */
179 1 void testBaseDaemonLoadConfigYmlString(const PPath & fileName){
180 // Read yaml file in a string
181
1/1
✓ Branch 0 (2→3) taken 1 times.
1 PString ymlString = fileName.loadFileContent();
182
1/1
✓ Branch 0 (3→4) taken 1 times.
1 BaseDaemon daemon;
183
2/2
✓ Branch 0 (4→5) taken 1 times.
✓ Branch 2 (5→6) taken 1 times.
1 daemon.load(ymlString, "main", ConfigFormat::YAML);
184
6/6
✓ Branch 0 (7→8) taken 1 times.
✓ Branch 2 (8→9) taken 1 times.
✓ Branch 4 (11→12) taken 1 times.
✓ Branch 6 (14→15) taken 1 times.
✓ Branch 8 (17→18) taken 1 times.
✓ Branch 10 (18→19) taken 1 times.
7 phoenix_assert(daemon.isDaemonExist("other"));
185
1/1
✓ Branch 0 (26→27) taken 1 times.
1 BaseDaemon daemon2;
186
7/9
✓ Branch 0 (27→28) taken 1 times.
✗ Branch 2 (28→29) not taken.
✓ Branch 4 (33→34) taken 1 times.
✓ Branch 6 (36→37) taken 1 times.
✓ Branch 8 (39→40) taken 1 times.
✓ Branch 10 (40→41) taken 1 times.
✗ Branch 12 (78→79) not taken.
✓ Branch 13 (78→80) taken 1 times.
✓ Branch 14 (81→31) taken 1 times.
7 PHOENIX_EXCEPTION_TYPE_ASSERT(Phoenix::ConfigException, daemon2.load(ymlString, "not_in_in_the_list", ConfigFormat::YAML));
187 1 }
188
189 ///Test the load configuration of a BaseDaemon
190 /** @param fileName : name of the configuration json file
191 */
192 1 void testBaseDaemonLoadConfigJson(const PPath & fileName){
193
1/1
✓ Branch 0 (2→3) taken 1 times.
1 BaseDaemon daemon;
194
6/6
✓ Branch 0 (3→4) taken 1 times.
✓ Branch 2 (4→5) taken 1 times.
✓ Branch 4 (7→8) taken 1 times.
✓ Branch 6 (10→11) taken 1 times.
✓ Branch 8 (13→14) taken 1 times.
✓ Branch 10 (14→15) taken 1 times.
7 phoenix_assert(daemon.load(fileName, "main"));
195
6/6
✓ Branch 0 (22→23) taken 1 times.
✓ Branch 2 (23→24) taken 1 times.
✓ Branch 4 (26→27) taken 1 times.
✓ Branch 6 (29→30) taken 1 times.
✓ Branch 8 (32→33) taken 1 times.
✓ Branch 10 (33→34) taken 1 times.
7 phoenix_assert(daemon.isDaemonExist("other"));
196
1/1
✓ Branch 0 (41→42) taken 1 times.
1 BaseDaemon daemon2;
197
7/9
✓ Branch 0 (42→43) taken 1 times.
✗ Branch 2 (43→44) not taken.
✓ Branch 4 (48→49) taken 1 times.
✓ Branch 6 (51→52) taken 1 times.
✓ Branch 8 (54→55) taken 1 times.
✓ Branch 10 (55→56) taken 1 times.
✗ Branch 12 (162→163) not taken.
✓ Branch 13 (162→164) taken 1 times.
✓ Branch 14 (165→46) taken 1 times.
7 PHOENIX_EXCEPTION_TYPE_ASSERT(Phoenix::ConfigException, daemon2.load(fileName, "not_in_in_the_list"));
198
1/1
✓ Branch 0 (62→63) taken 1 times.
1 BaseDaemon daemon3;
199
9/11
✓ Branch 0 (63→64) taken 1 times.
✓ Branch 2 (64→65) taken 1 times.
✓ Branch 4 (65→66) taken 1 times.
✗ Branch 6 (66→67) not taken.
✓ Branch 8 (73→74) taken 1 times.
✓ Branch 10 (76→77) taken 1 times.
✓ Branch 12 (79→80) taken 1 times.
✓ Branch 14 (80→81) taken 1 times.
✗ Branch 16 (193→194) not taken.
✓ Branch 17 (193→195) taken 1 times.
✓ Branch 18 (196→71) taken 1 times.
9 PHOENIX_EXCEPTION_TYPE_ASSERT(Phoenix::ParserException, daemon3.load(PPath("unexisting_config.json"), "main"));
200
1/1
✓ Branch 0 (87→88) taken 1 times.
1 BaseDaemon daemon4;
201
9/11
✓ Branch 0 (88→89) taken 1 times.
✓ Branch 2 (89→90) taken 1 times.
✓ Branch 4 (90→91) taken 1 times.
✗ Branch 6 (91→92) not taken.
✓ Branch 8 (98→99) taken 1 times.
✓ Branch 10 (101→102) taken 1 times.
✓ Branch 12 (104→105) taken 1 times.
✓ Branch 14 (105→106) taken 1 times.
✗ Branch 16 (224→225) not taken.
✓ Branch 17 (224→226) taken 1 times.
✓ Branch 18 (227→96) taken 1 times.
9 PHOENIX_EXCEPTION_TYPE_ASSERT(Phoenix::ParserException, daemon4.load(PPath("file.nonextension"), "main"));
202 1 }
203
204 ///Test the load configuration of a BaseDaemon from a JSON string
205 /** @param fileName : nom du fichier de configuration JSON
206 */
207 1 void testBaseDaemonLoadConfigJsonString(const PPath & fileName){
208 // Read json file in a string
209
1/1
✓ Branch 0 (2→3) taken 1 times.
1 PString jsonString = fileName.loadFileContent();
210
1/1
✓ Branch 0 (3→4) taken 1 times.
1 BaseDaemon daemon;
211
2/2
✓ Branch 0 (4→5) taken 1 times.
✓ Branch 2 (5→6) taken 1 times.
1 daemon.load(jsonString, "main", ConfigFormat::JSON);
212
6/6
✓ Branch 0 (7→8) taken 1 times.
✓ Branch 2 (8→9) taken 1 times.
✓ Branch 4 (11→12) taken 1 times.
✓ Branch 6 (14→15) taken 1 times.
✓ Branch 8 (17→18) taken 1 times.
✓ Branch 10 (18→19) taken 1 times.
7 phoenix_assert(daemon.isDaemonExist("other"));
213
1/1
✓ Branch 0 (26→27) taken 1 times.
1 BaseDaemon daemon2;
214
7/9
✓ Branch 0 (27→28) taken 1 times.
✗ Branch 2 (28→29) not taken.
✓ Branch 4 (33→34) taken 1 times.
✓ Branch 6 (36→37) taken 1 times.
✓ Branch 8 (39→40) taken 1 times.
✓ Branch 10 (40→41) taken 1 times.
✗ Branch 12 (78→79) not taken.
✓ Branch 13 (78→80) taken 1 times.
✓ Branch 14 (81→31) taken 1 times.
7 PHOENIX_EXCEPTION_TYPE_ASSERT(Phoenix::ConfigException, daemon2.load(jsonString, "not_in_in_the_list", ConfigFormat::JSON));
215 1 }
216
217 ///Test the parse argument of a BaseDaemon
218 /** @param configFile : name of the configuration file
219 * @param daemonName : name of the daemon to load
220 */
221 1 void testBaseDaemonParseArgument(const char* configFile, const char* daemonName) {
222 1 const char* argv[] = {
223 "phoenix_daemon",
224 "--daemonconfig", configFile,
225 "--daemonname", daemonName
226 1 };
227 1 int argc = sizeof(argv) / sizeof(argv[0]);
228
1/1
✓ Branch 0 (2→3) taken 1 times.
1 BaseDaemon daemon;
229
5/5
✓ Branch 0 (3→4) taken 1 times.
✓ Branch 2 (6→7) taken 1 times.
✓ Branch 4 (9→10) taken 1 times.
✓ Branch 6 (12→13) taken 1 times.
✓ Branch 8 (13→14) taken 1 times.
6 phoenix_assert(daemon.parseArgument(argc, const_cast<char**>(argv)));
230
1/1
✓ Branch 0 (20→21) taken 1 times.
1 daemon.stop();
231
6/6
✓ Branch 0 (21→22) taken 1 times.
✓ Branch 2 (22→23) taken 1 times.
✓ Branch 4 (25→26) taken 1 times.
✓ Branch 6 (28→29) taken 1 times.
✓ Branch 8 (31→32) taken 1 times.
✓ Branch 10 (32→33) taken 1 times.
7 phoenix_assert(daemon.isDaemonExist("other"));
232 1 }
233
234 ///Test the update of a StatAccumulator
235 1 void testUpdateStatAccumulator(){
236
1/1
✓ Branch 0 (2→3) taken 1 times.
1 BaseDaemon daemon;
237
1/1
✓ Branch 0 (3→4) taken 1 times.
1 StatAccumulator stat;
238
1/1
✓ Branch 0 (4→5) taken 1 times.
1 stat.setHistLowerBound(0.0f);
239
1/1
✓ Branch 0 (5→6) taken 1 times.
1 stat.setHistUpperBound(10.0f);
240
2/2
✓ Branch 0 (8→9) taken 1 times.
✓ Branch 2 (9→10) taken 1 times.
2 stat.setVecHistogram(std::vector<size_t>(5, 0lu)); //5 bins
241
242
1/1
✓ Branch 0 (12→13) taken 1 times.
1 daemon.updateStatAccumulator(stat, 2.0f);
243
5/5
✓ Branch 0 (13→14) taken 1 times.
✓ Branch 2 (16→17) taken 1 times.
✓ Branch 4 (19→20) taken 1 times.
✓ Branch 6 (22→23) taken 1 times.
✓ Branch 8 (23→24) taken 1 times.
6 phoenix_assert(stat.getNbEvent() == 1lu);
244
5/5
✓ Branch 0 (30→31) taken 1 times.
✓ Branch 2 (33→34) taken 1 times.
✓ Branch 4 (36→37) taken 1 times.
✓ Branch 6 (39→40) taken 1 times.
✓ Branch 8 (40→41) taken 1 times.
6 phoenix_assert(stat.getMin() == 2.0f);
245
5/5
✓ Branch 0 (47→48) taken 1 times.
✓ Branch 2 (50→51) taken 1 times.
✓ Branch 4 (53→54) taken 1 times.
✓ Branch 6 (56→57) taken 1 times.
✓ Branch 8 (57→58) taken 1 times.
6 phoenix_assert(stat.getMax() == 2.0f);
246
5/5
✓ Branch 0 (64→65) taken 1 times.
✓ Branch 2 (67→68) taken 1 times.
✓ Branch 4 (70→71) taken 1 times.
✓ Branch 6 (73→74) taken 1 times.
✓ Branch 8 (74→75) taken 1 times.
6 phoenix_assert(stat.getSum() == 2.0f);
247
5/5
✓ Branch 0 (81→82) taken 1 times.
✓ Branch 2 (85→86) taken 1 times.
✓ Branch 4 (88→89) taken 1 times.
✓ Branch 6 (91→92) taken 1 times.
✓ Branch 8 (92→93) taken 1 times.
6 phoenix_assert(stat.getVecHistogram()[1] == 1lu); //bin size = 2.0, so 2.0 goes to bin 1
248
249
1/1
✓ Branch 0 (99→100) taken 1 times.
1 daemon.updateStatAccumulator(stat, 8.0f);
250
5/5
✓ Branch 0 (100→101) taken 1 times.
✓ Branch 2 (103→104) taken 1 times.
✓ Branch 4 (106→107) taken 1 times.
✓ Branch 6 (109→110) taken 1 times.
✓ Branch 8 (110→111) taken 1 times.
6 phoenix_assert(stat.getNbEvent() == 2lu);
251
5/5
✓ Branch 0 (117→118) taken 1 times.
✓ Branch 2 (120→121) taken 1 times.
✓ Branch 4 (123→124) taken 1 times.
✓ Branch 6 (126→127) taken 1 times.
✓ Branch 8 (127→128) taken 1 times.
6 phoenix_assert(stat.getMin() == 2.0f);
252
5/5
✓ Branch 0 (134→135) taken 1 times.
✓ Branch 2 (137→138) taken 1 times.
✓ Branch 4 (140→141) taken 1 times.
✓ Branch 6 (143→144) taken 1 times.
✓ Branch 8 (144→145) taken 1 times.
6 phoenix_assert(stat.getMax() == 8.0f);
253
5/5
✓ Branch 0 (151→152) taken 1 times.
✓ Branch 2 (154→155) taken 1 times.
✓ Branch 4 (157→158) taken 1 times.
✓ Branch 6 (160→161) taken 1 times.
✓ Branch 8 (161→162) taken 1 times.
6 phoenix_assert(stat.getSum() == 10.0f);
254
5/5
✓ Branch 0 (168→169) taken 1 times.
✓ Branch 2 (172→173) taken 1 times.
✓ Branch 4 (175→176) taken 1 times.
✓ Branch 6 (178→179) taken 1 times.
✓ Branch 8 (179→180) taken 1 times.
6 phoenix_assert(stat.getVecHistogram()[4] == 1lu); //8.0 goes to bin 4
255
256
1/1
✓ Branch 0 (186→187) taken 1 times.
1 daemon.updateStatAccumulator(stat, -1.0f); //below lower bound
257
5/5
✓ Branch 0 (187→188) taken 1 times.
✓ Branch 2 (190→191) taken 1 times.
✓ Branch 4 (193→194) taken 1 times.
✓ Branch 6 (196→197) taken 1 times.
✓ Branch 8 (197→198) taken 1 times.
6 phoenix_assert(stat.getNbEvent() == 3lu);
258
5/5
✓ Branch 0 (204→205) taken 1 times.
✓ Branch 2 (207→208) taken 1 times.
✓ Branch 4 (210→211) taken 1 times.
✓ Branch 6 (213→214) taken 1 times.
✓ Branch 8 (214→215) taken 1 times.
6 phoenix_assert(stat.getNbEventBelowLowerBound() == 1lu);
259
260
1/1
✓ Branch 0 (221→222) taken 1 times.
1 daemon.updateStatAccumulator(stat, 12.0f); //above upper bound
261
5/5
✓ Branch 0 (222→223) taken 1 times.
✓ Branch 2 (225→226) taken 1 times.
✓ Branch 4 (228→229) taken 1 times.
✓ Branch 6 (231→232) taken 1 times.
✓ Branch 8 (232→233) taken 1 times.
6 phoenix_assert(stat.getNbEvent() == 4lu);
262
5/5
✓ Branch 0 (239→240) taken 1 times.
✓ Branch 2 (242→243) taken 1 times.
✓ Branch 4 (245→246) taken 1 times.
✓ Branch 6 (248→249) taken 1 times.
✓ Branch 8 (249→250) taken 1 times.
6 phoenix_assert(stat.getNbEventAboveUpperBound() == 1lu);
263 1 }
264
265 ///Test the clear of StatAccumulator in BaseDaemon
266 1 void testClearStatAccumulator(){
267
1/1
✓ Branch 0 (2→3) taken 1 times.
1 BaseDaemon daemon;
268
1/1
✓ Branch 0 (3→4) taken 1 times.
1 StatAccumulator stat;
269
1/1
✓ Branch 0 (4→5) taken 1 times.
1 stat.setHistLowerBound(0.0f);
270
1/1
✓ Branch 0 (5→6) taken 1 times.
1 stat.setHistUpperBound(10.0f);
271
2/2
✓ Branch 0 (8→9) taken 1 times.
✓ Branch 2 (9→10) taken 1 times.
2 stat.setVecHistogram(std::vector<size_t>(5, 0lu)); //5 bins
272
273
6/6
✓ Branch 0 (12→13) taken 1 times.
✓ Branch 2 (13→14) taken 1 times.
✓ Branch 4 (14→15) taken 1 times.
✓ Branch 6 (15→16) taken 1 times.
✓ Branch 8 (16→17) taken 1 times.
✓ Branch 10 (17→18) taken 1 times.
1 daemon.getConfig().getDaemonStatAccumulator().getMapStatComputing()["stat_name"] = stat;
274
8/8
✓ Branch 0 (19→20) taken 1 times.
✓ Branch 2 (20→21) taken 1 times.
✓ Branch 4 (21→22) taken 1 times.
✓ Branch 6 (22→23) taken 1 times.
✓ Branch 8 (23→24) taken 1 times.
✓ Branch 10 (24→25) taken 1 times.
✓ Branch 12 (25→26) taken 1 times.
✓ Branch 14 (26→27) taken 1 times.
1 daemon.getConfig().getDaemonStatAccumulator().getMapStatCommunication()["daemon_name"]["stat_name"] = stat;
275
276
7/7
✓ Branch 0 (29→30) taken 1 times.
✓ Branch 2 (30→31) taken 1 times.
✓ Branch 4 (31→32) taken 1 times.
✓ Branch 6 (35→36) taken 1 times.
✓ Branch 8 (38→39) taken 1 times.
✓ Branch 10 (41→42) taken 1 times.
✓ Branch 12 (42→43) taken 1 times.
6 phoenix_assert(!daemon.getConfig().getDaemonStatAccumulator().getMapStatComputing().empty());
277
7/7
✓ Branch 0 (49→50) taken 1 times.
✓ Branch 2 (50→51) taken 1 times.
✓ Branch 4 (51→52) taken 1 times.
✓ Branch 6 (55→56) taken 1 times.
✓ Branch 8 (58→59) taken 1 times.
✓ Branch 10 (61→62) taken 1 times.
✓ Branch 12 (62→63) taken 1 times.
6 phoenix_assert(!daemon.getConfig().getDaemonStatAccumulator().getMapStatCommunication().empty());
278
279
1/1
✓ Branch 0 (69→70) taken 1 times.
1 daemon.clearStat();
280
3/3
✓ Branch 0 (70→71) taken 1 times.
✓ Branch 2 (71→72) taken 1 times.
✓ Branch 4 (72→73) taken 1 times.
1 for(MapStatAccumulator::const_iterator it = daemon.getConfig().getDaemonStatAccumulator().getMapStatComputing().begin();
281
5/5
✓ Branch 0 (129→130) taken 2 times.
✓ Branch 2 (130→131) taken 2 times.
✓ Branch 4 (131→132) taken 2 times.
✓ Branch 6 (135→76) taken 1 times.
✓ Branch 7 (135→136) taken 1 times.
2 it != daemon.getConfig().getDaemonStatAccumulator().getMapStatComputing().end(); ++it)
282 {
283
5/5
✓ Branch 0 (77→78) taken 1 times.
✓ Branch 2 (80→81) taken 1 times.
✓ Branch 4 (83→84) taken 1 times.
✓ Branch 6 (86→87) taken 1 times.
✓ Branch 8 (87→88) taken 1 times.
6 phoenix_assert(it->second.getNbEvent() == 0lu);
284
1/1
✓ Branch 0 (95→96) taken 1 times.
1 for(std::vector<size_t>::const_iterator vit = it->second.getVecHistogram().begin();
285
3/3
✓ Branch 0 (119→120) taken 6 times.
✓ Branch 2 (127→97) taken 5 times.
✓ Branch 3 (127→128) taken 1 times.
12 vit != it->second.getVecHistogram().end(); ++vit) {
286
4/4
✓ Branch 0 (101→102) taken 5 times.
✓ Branch 2 (104→105) taken 5 times.
✓ Branch 4 (107→108) taken 5 times.
✓ Branch 6 (108→109) taken 5 times.
35 phoenix_assert(*vit == 0lu);
287 }
288 }
289
3/3
✓ Branch 0 (136→137) taken 1 times.
✓ Branch 2 (137→138) taken 1 times.
✓ Branch 4 (138→139) taken 1 times.
1 for(MapDaemonStatAccumulator::const_iterator itMap = daemon.getConfig().getDaemonStatAccumulator().getMapStatCommunication().begin();
290
5/5
✓ Branch 0 (202→203) taken 2 times.
✓ Branch 2 (203→204) taken 2 times.
✓ Branch 4 (204→205) taken 2 times.
✓ Branch 6 (208→142) taken 1 times.
✓ Branch 7 (208→209) taken 1 times.
2 itMap != daemon.getConfig().getDaemonStatAccumulator().getMapStatCommunication().end(); ++itMap)
291 {
292
2/2
✓ Branch 0 (200→144) taken 1 times.
✓ Branch 1 (200→201) taken 1 times.
2 for(MapStatAccumulator::const_iterator it = itMap->second.begin(); it != itMap->second.end(); ++it) {
293
5/5
✓ Branch 0 (145→146) taken 1 times.
✓ Branch 2 (148→149) taken 1 times.
✓ Branch 4 (151→152) taken 1 times.
✓ Branch 6 (154→155) taken 1 times.
✓ Branch 8 (155→156) taken 1 times.
6 phoenix_assert(it->second.getNbEvent() == 0lu);
294
1/1
✓ Branch 0 (163→164) taken 1 times.
1 for(std::vector<size_t>::const_iterator vit = it->second.getVecHistogram().begin();
295
3/3
✓ Branch 0 (187→188) taken 6 times.
✓ Branch 2 (195→165) taken 5 times.
✓ Branch 3 (195→196) taken 1 times.
12 vit != it->second.getVecHistogram().end(); ++vit) {
296
4/4
✓ Branch 0 (169→170) taken 5 times.
✓ Branch 2 (172→173) taken 5 times.
✓ Branch 4 (175→176) taken 5 times.
✓ Branch 6 (176→177) taken 5 times.
35 phoenix_assert(*vit == 0lu);
297 }
298 }
299 }
300 1 }
301
302 ///Create stat accumulator
303 /** @return StatAccumulator
304 */
305 3 StatAccumulator createTestStatAccumulator() {
306 3 StatAccumulator stat;
307
1/1
✓ Branch 0 (3→4) taken 3 times.
3 stat.setNbEvent(4lu);
308
1/1
✓ Branch 0 (4→5) taken 3 times.
3 stat.setMin(2.0f);
309
1/1
✓ Branch 0 (5→6) taken 3 times.
3 stat.setMax(8.0f);
310
1/1
✓ Branch 0 (6→7) taken 3 times.
3 stat.setSum(20.0f);
311
1/1
✓ Branch 0 (7→8) taken 3 times.
3 stat.setNbEventBelowLowerBound(1lu);
312
1/1
✓ Branch 0 (8→9) taken 3 times.
3 stat.setNbEventAboveUpperBound(1lu);
313
1/1
✓ Branch 0 (9→10) taken 3 times.
3 stat.setHistLowerBound(0.0f);
314
1/1
✓ Branch 0 (10→11) taken 3 times.
3 stat.setHistUpperBound(10.0f);
315
2/2
✓ Branch 0 (13→14) taken 3 times.
✓ Branch 2 (14→15) taken 3 times.
6 stat.setVecHistogram(std::vector<size_t>(5, 0lu));
316
1/1
✓ Branch 0 (17→18) taken 3 times.
3 stat.getVecHistogram()[1] = 1lu; //bin for 2.0
317
1/1
✓ Branch 0 (19→20) taken 3 times.
3 stat.getVecHistogram()[4] = 1lu; //bin for 8.0
318 3 return stat;
319 }
320
321 ///@brief Test Daemon
322 class TestBaseDaemon : public BaseDaemon{
323 public:
324 using BaseDaemon::fillVecStat;
325 using BaseDaemon::fillDaemonStat;
326 };
327
328 ///Test the fill vector of stats
329 1 void testFillVecStat(){
330
1/1
✓ Branch 0 (2→3) taken 1 times.
1 TestBaseDaemon daemon;
331
1/1
✓ Branch 0 (3→4) taken 1 times.
1 StatAccumulator stat = createTestStatAccumulator();
332 1 time_t startTime = 1000lu;
333 1 time_t endTime = 2000lu;
334
335
1/1
✓ Branch 0 (4→5) taken 1 times.
1 VecStat vecStat = daemon.fillVecStat(stat, startTime, endTime);
336
5/5
✓ Branch 0 (5→6) taken 1 times.
✓ Branch 2 (9→10) taken 1 times.
✓ Branch 4 (12→13) taken 1 times.
✓ Branch 6 (15→16) taken 1 times.
✓ Branch 8 (16→17) taken 1 times.
6 phoenix_assert(vecStat.getNbEvent().size() == 1lu);
337
5/5
✓ Branch 0 (23→24) taken 1 times.
✓ Branch 2 (27→28) taken 1 times.
✓ Branch 4 (30→31) taken 1 times.
✓ Branch 6 (33→34) taken 1 times.
✓ Branch 8 (34→35) taken 1 times.
6 phoenix_assert(vecStat.getNbEvent()[0] == 4lu);
338
5/5
✓ Branch 0 (41→42) taken 1 times.
✓ Branch 2 (45→46) taken 1 times.
✓ Branch 4 (48→49) taken 1 times.
✓ Branch 6 (51→52) taken 1 times.
✓ Branch 8 (52→53) taken 1 times.
6 phoenix_assert(vecStat.getMin().size() == 1lu);
339
5/5
✓ Branch 0 (59→60) taken 1 times.
✓ Branch 2 (63→64) taken 1 times.
✓ Branch 4 (66→67) taken 1 times.
✓ Branch 6 (69→70) taken 1 times.
✓ Branch 8 (70→71) taken 1 times.
6 phoenix_assert(vecStat.getMin()[0] == 2.0f);
340
5/5
✓ Branch 0 (77→78) taken 1 times.
✓ Branch 2 (81→82) taken 1 times.
✓ Branch 4 (84→85) taken 1 times.
✓ Branch 6 (87→88) taken 1 times.
✓ Branch 8 (88→89) taken 1 times.
6 phoenix_assert(vecStat.getMax().size() == 1lu);
341
5/5
✓ Branch 0 (95→96) taken 1 times.
✓ Branch 2 (99→100) taken 1 times.
✓ Branch 4 (102→103) taken 1 times.
✓ Branch 6 (105→106) taken 1 times.
✓ Branch 8 (106→107) taken 1 times.
6 phoenix_assert(vecStat.getMax()[0] == 8.0f);
342
5/5
✓ Branch 0 (113→114) taken 1 times.
✓ Branch 2 (117→118) taken 1 times.
✓ Branch 4 (120→121) taken 1 times.
✓ Branch 6 (123→124) taken 1 times.
✓ Branch 8 (124→125) taken 1 times.
6 phoenix_assert(vecStat.getAverage().size() == 1lu);
343
5/5
✓ Branch 0 (131→132) taken 1 times.
✓ Branch 2 (135→136) taken 1 times.
✓ Branch 4 (138→139) taken 1 times.
✓ Branch 6 (141→142) taken 1 times.
✓ Branch 8 (142→143) taken 1 times.
6 phoenix_assert(vecStat.getAverage()[0] == 5.0f); //20.0 / 4
344
345
5/5
✓ Branch 0 (149→150) taken 1 times.
✓ Branch 2 (153→154) taken 1 times.
✓ Branch 4 (156→157) taken 1 times.
✓ Branch 6 (159→160) taken 1 times.
✓ Branch 8 (160→161) taken 1 times.
6 phoenix_assert(vecStat.getStartTimestamp().size() == 1lu);
346
5/5
✓ Branch 0 (167→168) taken 1 times.
✓ Branch 2 (171→172) taken 1 times.
✓ Branch 4 (174→175) taken 1 times.
✓ Branch 6 (177→178) taken 1 times.
✓ Branch 8 (178→179) taken 1 times.
6 phoenix_assert(vecStat.getStartTimestamp()[0] == startTime);
347
5/5
✓ Branch 0 (185→186) taken 1 times.
✓ Branch 2 (189→190) taken 1 times.
✓ Branch 4 (192→193) taken 1 times.
✓ Branch 6 (195→196) taken 1 times.
✓ Branch 8 (196→197) taken 1 times.
6 phoenix_assert(vecStat.getEndTimestamp().size() == 1lu);
348
5/5
✓ Branch 0 (203→204) taken 1 times.
✓ Branch 2 (207→208) taken 1 times.
✓ Branch 4 (210→211) taken 1 times.
✓ Branch 6 (213→214) taken 1 times.
✓ Branch 8 (214→215) taken 1 times.
6 phoenix_assert(vecStat.getEndTimestamp()[0] == endTime);
349
5/5
✓ Branch 0 (221→222) taken 1 times.
✓ Branch 2 (225→226) taken 1 times.
✓ Branch 4 (228→229) taken 1 times.
✓ Branch 6 (231→232) taken 1 times.
✓ Branch 8 (232→233) taken 1 times.
6 phoenix_assert(vecStat.getRate().size() == 1lu);
350
5/5
✓ Branch 0 (239→240) taken 1 times.
✓ Branch 2 (243→244) taken 1 times.
✓ Branch 4 (246→247) taken 1 times.
✓ Branch 6 (249→250) taken 1 times.
✓ Branch 8 (250→251) taken 1 times.
6 phoenix_assert(vecStat.getRateEventBelowLowerBound().size() == 1lu);
351
5/5
✓ Branch 0 (257→258) taken 1 times.
✓ Branch 2 (261→262) taken 1 times.
✓ Branch 4 (264→265) taken 1 times.
✓ Branch 6 (267→268) taken 1 times.
✓ Branch 8 (268→269) taken 1 times.
6 phoenix_assert(vecStat.getRateEventAboveUpperBound().size() == 1lu);
352
5/5
✓ Branch 0 (275→276) taken 1 times.
✓ Branch 2 (279→280) taken 1 times.
✓ Branch 4 (282→283) taken 1 times.
✓ Branch 6 (285→286) taken 1 times.
✓ Branch 8 (286→287) taken 1 times.
6 phoenix_assert(vecStat.getVecRateQuantile().size() == 5lu);
353 1 }
354
355 ///Test the fill of Daemon stats
356 1 void testFillDaemonStat(){
357
1/1
✓ Branch 0 (2→3) taken 1 times.
1 TestBaseDaemon daemon;
358
1/1
✓ Branch 0 (3→4) taken 1 times.
1 StatAccumulator stat1 = createTestStatAccumulator();
359
6/6
✓ Branch 0 (4→5) taken 1 times.
✓ Branch 2 (5→6) taken 1 times.
✓ Branch 4 (6→7) taken 1 times.
✓ Branch 6 (7→8) taken 1 times.
✓ Branch 8 (8→9) taken 1 times.
✓ Branch 10 (9→10) taken 1 times.
1 daemon.getConfig().getDaemonStatAccumulator().getMapStatComputing()["stat1"] = stat1;
360
1/1
✓ Branch 0 (11→12) taken 1 times.
1 StatAccumulator stat2 = createTestStatAccumulator();
361
8/8
✓ Branch 0 (12→13) taken 1 times.
✓ Branch 2 (13→14) taken 1 times.
✓ Branch 4 (14→15) taken 1 times.
✓ Branch 6 (15→16) taken 1 times.
✓ Branch 8 (16→17) taken 1 times.
✓ Branch 10 (17→18) taken 1 times.
✓ Branch 12 (18→19) taken 1 times.
✓ Branch 14 (19→20) taken 1 times.
1 daemon.getConfig().getDaemonStatAccumulator().getMapStatCommunication()["other"]["stat2"] = stat2;
362
363
1/1
✓ Branch 0 (22→23) taken 1 times.
1 Stat daemonStat;
364 1 time_t startTime = 1000lu;
365 1 time_t endTime = 2000lu;
366
1/1
✓ Branch 0 (23→24) taken 1 times.
1 daemon.fillDaemonStat(daemonStat, startTime, endTime);
367
368
8/8
✓ Branch 0 (24→25) taken 1 times.
✓ Branch 2 (25→26) taken 1 times.
✓ Branch 4 (26→27) taken 1 times.
✓ Branch 6 (27→28) taken 1 times.
✓ Branch 8 (32→33) taken 1 times.
✓ Branch 10 (35→36) taken 1 times.
✓ Branch 12 (38→39) taken 1 times.
✓ Branch 14 (39→40) taken 1 times.
7 phoenix_assert(daemonStat.getMapStatComputing().find("stat1") != daemonStat.getMapStatComputing().end());
369
8/8
✓ Branch 0 (47→48) taken 1 times.
✓ Branch 2 (48→49) taken 1 times.
✓ Branch 4 (49→50) taken 1 times.
✓ Branch 6 (50→51) taken 1 times.
✓ Branch 8 (55→56) taken 1 times.
✓ Branch 10 (58→59) taken 1 times.
✓ Branch 12 (61→62) taken 1 times.
✓ Branch 14 (62→63) taken 1 times.
7 phoenix_assert(daemonStat.getMapStatCommunication().find("other") != daemonStat.getMapStatCommunication().end());
370
12/12
✓ Branch 0 (70→71) taken 1 times.
✓ Branch 2 (71→72) taken 1 times.
✓ Branch 4 (72→73) taken 1 times.
✓ Branch 6 (73→74) taken 1 times.
✓ Branch 8 (74→75) taken 1 times.
✓ Branch 10 (75→76) taken 1 times.
✓ Branch 12 (76→77) taken 1 times.
✓ Branch 14 (77→78) taken 1 times.
✓ Branch 16 (82→83) taken 1 times.
✓ Branch 18 (85→86) taken 1 times.
✓ Branch 20 (88→89) taken 1 times.
✓ Branch 22 (89→90) taken 1 times.
7 phoenix_assert(daemonStat.getMapStatCommunication()["other"].find("stat2") != daemonStat.getMapStatCommunication()["other"].end());
371
8/8
✓ Branch 0 (99→100) taken 1 times.
✓ Branch 2 (100→101) taken 1 times.
✓ Branch 4 (101→102) taken 1 times.
✓ Branch 6 (102→103) taken 1 times.
✓ Branch 8 (107→108) taken 1 times.
✓ Branch 10 (110→111) taken 1 times.
✓ Branch 12 (113→114) taken 1 times.
✓ Branch 14 (114→115) taken 1 times.
7 phoenix_assert(daemonStat.getMapStatComputing().find("bad_stat") == daemonStat.getMapStatComputing().end());
372 1 }
373
374 1 int main(int argc, char** argv){
375
376 1 testBaseDaemonMissingDaemonSectionTomlString();
377 1 testBaseDaemonMissingDaemonSectionYmlString();
378 1 testBaseDaemonMissingDaemonSectionJsonString();
379
380 1 testBaseDaemonMissingDaemonSectionTomlFile();
381 1 testBaseDaemonMissingDaemonSectionYmlFile();
382 1 testBaseDaemonMissingDaemonSectionJsonFile();
383
384
3/3
✓ Branch 0 (8→9) taken 1 times.
✓ Branch 2 (9→10) taken 1 times.
✓ Branch 4 (10→11) taken 1 times.
1 testBaseDaemonLoadConfigToml(PPath(DAEMON_CONFIG_OK_TOML));
385
3/3
✓ Branch 0 (13→14) taken 1 times.
✓ Branch 2 (14→15) taken 1 times.
✓ Branch 4 (15→16) taken 1 times.
1 testBaseDaemonLoadConfigTomlString(PPath(DAEMON_CONFIG_OK_TOML));
386
3/3
✓ Branch 0 (18→19) taken 1 times.
✓ Branch 2 (19→20) taken 1 times.
✓ Branch 4 (20→21) taken 1 times.
1 testBaseDaemonLoadConfigYml(PPath(DAEMON_CONFIG_OK_YAML));
387
3/3
✓ Branch 0 (23→24) taken 1 times.
✓ Branch 2 (24→25) taken 1 times.
✓ Branch 4 (25→26) taken 1 times.
1 testBaseDaemonLoadConfigYmlString(PPath(DAEMON_CONFIG_OK_YAML));
388
3/3
✓ Branch 0 (28→29) taken 1 times.
✓ Branch 2 (29→30) taken 1 times.
✓ Branch 4 (30→31) taken 1 times.
1 testBaseDaemonLoadConfigJson(PPath(DAEMON_CONFIG_OK_JSON));
389
3/3
✓ Branch 0 (33→34) taken 1 times.
✓ Branch 2 (34→35) taken 1 times.
✓ Branch 4 (35→36) taken 1 times.
1 testBaseDaemonLoadConfigJsonString(PPath(DAEMON_CONFIG_OK_JSON));
390 1 testBaseDaemonParseArgument(DAEMON_CONFIG_OK_TOML, "main");
391
3/3
✓ Branch 0 (39→40) taken 1 times.
✓ Branch 2 (40→41) taken 1 times.
✓ Branch 4 (41→42) taken 1 times.
1 testBaseDaemonProcessConfirmedMessage(PPath(DAEMON_CONFIG_OK_TOML));
392 1 testBaseDaemonGetMessageToConfirm();
393 1 testUpdateStatAccumulator();
394 1 testClearStatAccumulator();
395 1 testFillVecStat();
396 1 testFillDaemonStat();
397 1 return 0;
398 }
399
400