GCC Code Coverage Report


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