GCC Code Coverage Report


Directory: ./
File: src/phoenix_check.cpp
Date: 2025-01-30 16:05:26
Exec Total Coverage
Lines: 24 27 88.9%
Branches: 30 35 85.7%

Line Branch Exec Source
1 /***************************************
2 Auteur : Pierre Aubert
3 Mail : pierre.aubert@lapp.in2p3.fr
4 Licence : CeCILL-C
5 ****************************************/
6
7 #include "convertToString.h"
8 #include "string_filename.h"
9 #include "phoenix_check.h"
10
11 ///Check two string
12 /** @param testName : name of the current test
13 * @param val : std::string to be checked
14 * @param reference : reference std::string
15 * @return true if val == reference, false otherwise
16 */
17 132 bool phoenix_check(const std::string & testName, const std::string & val, const std::string & reference){
18 132 bool b(val == reference);
19
1/2
✗ Branch 0 not taken.
✓ Branch 1 taken 132 times.
132 if(!b){
20 std::cout << "phoenix_check : " << testName << " => " << phoenix_isOk(b) << std::endl;
21 std::cout << "\tval = '"<<val<<"'" << std::endl;
22 std::cout << "\treference = '"<<reference<<"'" << std::endl;
23 }
24 132 return b;
25 }
26
27 ///Check two vector of string
28 /** @param testName : name of the current test
29 * @param listVal : list of std::string to be checked
30 * @param listRef : list of reference std::string
31 * @return true if val == reference, false otherwise
32 */
33 8 bool phoenix_check(const std::string & testName, const std::vector<std::string> & listVal, const std::vector<std::string> & listRef){
34 8 bool b(true);
35 //On this implementation, two vectors of different sizes are not comparable
36
2/2
✓ Branch 3 taken 8 times.
✓ Branch 6 taken 8 times.
8 b &= phoenix_check(testName + " size", listVal.size(), listRef.size());
37
6/6
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 3 times.
✓ Branch 3 taken 3 times.
✓ Branch 4 taken 5 times.
✓ Branch 5 taken 3 times.
✓ Branch 6 taken 8 times.
11 for(size_t i(0lu); i < listVal.size() && b; ++i){
38
5/5
✓ Branch 3 taken 3 times.
✓ Branch 6 taken 3 times.
✓ Branch 9 taken 3 times.
✓ Branch 12 taken 3 times.
✓ Branch 15 taken 3 times.
3 b &= phoenix_check(testName + " str("+convertToString(i)+")", listVal[i], listRef[i]);
39 }
40 8 return b;
41 }
42
43 ///Check two list of string
44 /** @param testName : name of the current test
45 * @param listVal : list of std::string to be checked
46 * @param listRef : list of reference std::string
47 * @return true if val == reference, false otherwise
48 */
49 8 bool phoenix_check(const std::string & testName, const std::list<std::string> & listVal, const std::list<std::string> & listRef){
50 8 bool b(true);
51 //On this implementation, two list of different sizes are not comparable
52
2/2
✓ Branch 3 taken 8 times.
✓ Branch 6 taken 8 times.
8 b &= phoenix_check(testName + " size", listVal.size(), listRef.size());
53 8 std::list<std::string>::const_iterator itVal(listVal.begin());
54 8 std::list<std::string>::const_iterator itRef(listRef.begin());
55 8 size_t i(0lu);
56
8/8
✓ Branch 2 taken 8 times.
✓ Branch 3 taken 3 times.
✓ Branch 6 taken 7 times.
✓ Branch 7 taken 1 times.
✓ Branch 8 taken 3 times.
✓ Branch 9 taken 4 times.
✓ Branch 10 taken 3 times.
✓ Branch 11 taken 8 times.
11 while(itVal != listVal.end() && itRef != listRef.end() && b){
57
5/5
✓ Branch 3 taken 3 times.
✓ Branch 6 taken 3 times.
✓ Branch 9 taken 3 times.
✓ Branch 12 taken 3 times.
✓ Branch 15 taken 3 times.
3 b &= phoenix_check(testName + " str("+convertToString(i)+")", *itVal, *itRef);
58 3 ++itVal;
59 3 ++itRef;
60 3 ++i;
61 }
62 8 return b;
63 }
64
65 ///Check the content of a file
66 /** @param testName : name of the current test
67 * @param fileName : name of the file to be checked
68 * @param expectedContent : expected content of the file
69 * @return true if the file content is correct, false otherwise
70 */
71 1 bool phoenix_check_fileContent(const std::string & testName, const std::string & fileName, const std::string & expectedContent){
72
1/1
✓ Branch 2 taken 1 times.
1 return phoenix_check(testName, getFileContent(fileName), expectedContent);
73 }
74
75