GCC Code Coverage Report


Directory: ./
File: tmp_project/PhoenixDataStream/src/data_stream_check_value_impl.h
Date: 2025-03-14 12:18:05
Exec Total Coverage
Lines: 82 82 100.0%
Branches: 125 130 96.2%

Line Branch Exec Source
1 /***************************************
2 Auteur : Pierre Aubert
3 Mail : pierre.aubert@lapp.in2p3.fr
4 Licence : CeCILL-C
5 ****************************************/
6
7 #ifndef __DATA_STREAM_CHECK_VALUE_IMPL_H__
8 #define __DATA_STREAM_CHECK_VALUE_IMPL_H__
9
10 #include "data_stream_check_value.h"
11
12 ///Check given value compare to the reference value
13 /** @param testName : name of the current test
14 * @param givenSize : size to be tested
15 * @param referenceSize : reference value
16 * @return true on success, false otherwise
17 */
18 template<typename T>
19 238152 bool checkValue(const std::string & testName, const T & givenSize, const T & referenceSize){
20 // std::cout << "checkValue : "<<testName<<" => " << givenSize << ", reference ("<<referenceSize<<")" << std::endl;
21
2/2
✓ Branch 0 taken 1 times.
✓ Branch 1 taken 119324 times.
238152 if(givenSize != referenceSize){
22 1 std::cerr << "checkValue : "<<testName<<" wrong size givenSize("<<givenSize<<") != referenceSize("<<referenceSize<<")" << std::endl;
23 }
24 238152 return givenSize == referenceSize;
25 }
26
27 ///Check given value compare to the reference value
28 /** @param testName : name of the current test
29 * @param tabData : table of values to be tested
30 * @param tabReferenceData : table of reference value
31 * @param nbElement : number of elements to be checked
32 * @return true on success, false otherwise
33 */
34 template<typename T>
35 2354 bool checkValue(const std::string & testName, const T * tabData, const T * tabReferenceData, size_t nbElement){
36 2354 bool b(true);
37
4/4
✓ Branch 0 taken 6 times.
✓ Branch 1 taken 1 times.
✓ Branch 2 taken 5 times.
✓ Branch 3 taken 1 times.
121135 for(size_t i(0lu); i < nbElement && b; ++i){
38
1/1
✓ Branch 1 taken 5 times.
118781 std::stringstream str;
39
1/1
✓ Branch 1 taken 5 times.
118781 str << i;
40
4/4
✓ Branch 1 taken 5 times.
✓ Branch 4 taken 5 times.
✓ Branch 7 taken 5 times.
✓ Branch 10 taken 5 times.
118781 b &= checkValue(testName + " element "+str.str(), tabData[i], tabReferenceData[i]);
41 }
42 2354 return b;
43 }
44
45 ///Check given value compare to the reference size
46 /** @param testName : name of the current test
47 * @param vecData : vector of data to be checked
48 * @param vecReferenceData : vector of reference data
49 * @return true on success, false otherwise
50 */
51 template<typename T>
52 27 bool checkValue(const std::string & testName, const std::vector<T> & vecData, const std::vector<T> & vecReferenceData){
53
2/2
✓ Branch 2 taken 1 times.
✓ Branch 3 taken 2 times.
27 if(vecData.size() != vecReferenceData.size()){
54 1 std::cout << "checkValue : "<<testName<<" => vecData.size(" << vecData.size() << ") != vecReferenceData.size("<<vecReferenceData.size()<<")" << std::endl;
55 1 return false;
56 }
57 26 bool b(true);
58
5/6
✓ Branch 1 taken 4 times.
✓ Branch 2 taken 2 times.
✓ Branch 3 taken 4 times.
✗ Branch 4 not taken.
✓ Branch 5 taken 4 times.
✓ Branch 6 taken 2 times.
270 for(size_t i(0lu); i < vecData.size() && b; ++i){
59 244 b &= vecData[i] == vecReferenceData[i];
60
2/2
✓ Branch 0 taken 1 times.
✓ Branch 1 taken 3 times.
244 if(!b){
61 1 std::cout << "checkValue : "<<testName<<" => vecData["<<i<<"](" << vecData[i] << ") != vecReferenceData["<<i<<"]("<<vecReferenceData[i]<<")" << std::endl;
62 }
63 }
64 // if(b){std::cout << "checkValue : "<<testName<<" => Ok"<<std::endl;}
65 // else{std::cout << "checkValue : "<<testName<<" => WRONG!!!!"<<std::endl;}
66 26 return b;
67 }
68
69 ///Check given value compare to the reference size
70 /** @param testName : name of the current test
71 * @param vecData : vector of data to be checked
72 * @param vecReferenceData : vector of reference data
73 * @return true on success, false otherwise
74 */
75 template<typename T>
76 28 bool checkValue(const std::string & testName, const std::list<T> & vecData, const std::list<T> & vecReferenceData){
77
2/2
✓ Branch 2 taken 1 times.
✓ Branch 3 taken 2 times.
28 if(vecData.size() != vecReferenceData.size()){
78
8/8
✓ Branch 1 taken 1 times.
✓ Branch 4 taken 1 times.
✓ Branch 7 taken 1 times.
✓ Branch 11 taken 1 times.
✓ Branch 14 taken 1 times.
✓ Branch 18 taken 1 times.
✓ Branch 21 taken 1 times.
✓ Branch 24 taken 1 times.
1 std::cout << "checkValue : "<<testName<<" => vecData.size(" << vecData.size() << ") != vecReferenceData.size("<<vecReferenceData.size()<<")" << std::endl;
79 1 return false;
80 }
81 27 bool b(true);
82 27 typename std::list<T>::const_iterator itData = vecData.begin();
83 27 typename std::list<T>::const_iterator itRef = vecReferenceData.begin();
84 27 size_t i(0lu);
85
5/6
✓ Branch 2 taken 4 times.
✓ Branch 3 taken 2 times.
✓ Branch 6 taken 4 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 4 times.
✓ Branch 9 taken 2 times.
281 while(itData != vecData.end() && itRef != vecReferenceData.end()){
86 254 b &= *itData == *itRef;
87
2/2
✓ Branch 0 taken 1 times.
✓ Branch 1 taken 3 times.
254 if(!b){
88
12/12
✓ Branch 1 taken 1 times.
✓ Branch 4 taken 1 times.
✓ Branch 7 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 13 taken 1 times.
✓ Branch 17 taken 1 times.
✓ Branch 20 taken 1 times.
✓ Branch 23 taken 1 times.
✓ Branch 26 taken 1 times.
✓ Branch 30 taken 1 times.
✓ Branch 33 taken 1 times.
✓ Branch 36 taken 1 times.
1 std::cout << "checkValue : "<<testName<<" => vecData["<<i<<"](" << (*itData) << ") != vecReferenceData["<<i<<"]("<<(*itRef)<<")" << std::endl;
89 }
90 254 ++i;
91 254 ++itData;
92 254 ++itRef;
93 }
94 // if(b){std::cout << "checkValue : "<<testName<<" => Ok"<<std::endl;}
95 // else{std::cout << "checkValue : "<<testName<<" => WRONG!!!!"<<std::endl;}
96 27 return b;
97 }
98
99 ///Check given value compare to the reference size
100 /** @param testName : name of the current test
101 * @param vecData : vector of data to be checked
102 * @param vecReferenceData : vector of reference data
103 * @return true on success, false otherwise
104 */
105 template<typename T, typename U>
106 160 bool checkValue(const std::string & testName, const std::map<T, U> & vecData, const std::map<T, U> & vecReferenceData){
107
2/2
✓ Branch 2 taken 1 times.
✓ Branch 3 taken 2 times.
160 if(vecData.size() != vecReferenceData.size()){
108
8/8
✓ Branch 1 taken 1 times.
✓ Branch 4 taken 1 times.
✓ Branch 7 taken 1 times.
✓ Branch 11 taken 1 times.
✓ Branch 14 taken 1 times.
✓ Branch 18 taken 1 times.
✓ Branch 21 taken 1 times.
✓ Branch 24 taken 1 times.
1 std::cout << "checkValue : "<<testName<<" => vecData.size(" << vecData.size() << ") != vecReferenceData.size("<<vecReferenceData.size()<<")" << std::endl;
109 1 return false;
110 }
111 159 bool b(true);
112 159 typename std::map<T,U>::const_iterator itData = vecData.begin();
113 159 typename std::map<T, U>::const_iterator itRef = vecReferenceData.begin();
114 159 size_t i(0lu);
115
5/6
✓ Branch 2 taken 4 times.
✓ Branch 3 taken 2 times.
✓ Branch 6 taken 4 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 4 times.
✓ Branch 9 taken 2 times.
1637 while(itData != vecData.end() && itRef != vecReferenceData.end()){
116 1478 b &= itData->first == itRef->first;
117 1478 b &= itData->second == itRef->second;
118
2/2
✓ Branch 0 taken 2 times.
✓ Branch 1 taken 2 times.
1478 if(!b){
119
16/16
✓ Branch 1 taken 2 times.
✓ Branch 4 taken 2 times.
✓ Branch 7 taken 2 times.
✓ Branch 10 taken 2 times.
✓ Branch 13 taken 2 times.
✓ Branch 17 taken 2 times.
✓ Branch 20 taken 2 times.
✓ Branch 24 taken 2 times.
✓ Branch 27 taken 2 times.
✓ Branch 30 taken 2 times.
✓ Branch 33 taken 2 times.
✓ Branch 37 taken 2 times.
✓ Branch 40 taken 2 times.
✓ Branch 44 taken 2 times.
✓ Branch 47 taken 2 times.
✓ Branch 50 taken 2 times.
2 std::cout << "checkValue : "<<testName<<" => vecData["<<i<<"](" << itData->first << ", " << itData->second << ") != vecReferenceData["<<i<<"]("<<itRef->first << "," << itRef->second<<")" << std::endl;
120 }
121 1478 ++i;
122 1478 ++itData;
123 1478 ++itRef;
124 }
125 // if(b){std::cout << "checkValue : "<<testName<<" => Ok"<<std::endl;}
126 // else{std::cout << "checkValue : "<<testName<<" => WRONG!!!!"<<std::endl;}
127 159 return b;
128 }
129
130 ///Check given value compare to the reference size
131 /** @param testName : name of the current test
132 * @param vecData : vector of data to be checked
133 * @param vecReferenceData : vector of reference data
134 * @return true on success, false otherwise
135 */
136 template<typename T, typename U>
137 160 bool checkValue(const std::string & testName, const std::vector<std::pair<T, U> > & vecData, const std::vector<std::pair<T, U> > & vecReferenceData){
138
2/2
✓ Branch 2 taken 1 times.
✓ Branch 3 taken 2 times.
160 if(vecData.size() != vecReferenceData.size()){
139 1 std::cout << "checkValue : "<<testName<<" => vecData.size(" << vecData.size() << ") != vecReferenceData.size("<<vecReferenceData.size()<<")" << std::endl;
140 1 return false;
141 }
142 159 bool b(true);
143
5/6
✓ Branch 1 taken 4 times.
✓ Branch 2 taken 2 times.
✓ Branch 3 taken 4 times.
✗ Branch 4 not taken.
✓ Branch 5 taken 4 times.
✓ Branch 6 taken 2 times.
1733 for(size_t i(0lu); i < vecData.size() && b; ++i){
144 1574 b &= vecData[i].first == vecReferenceData[i].first;
145 1574 b &= vecData[i].second == vecReferenceData[i].second;
146
2/2
✓ Branch 0 taken 1 times.
✓ Branch 1 taken 3 times.
1574 if(!b){
147 1 std::cout << "checkValue : "<<testName<<" => vecData["<<i<<"](" << vecData[i].first << ", " << vecData[i].second << ") != vecReferenceData["<<i<<"]("<<vecReferenceData[i].first << ","<<vecReferenceData[i].second <<")" << std::endl;
148 }
149 }
150 // if(b){std::cout << "checkValue : "<<testName<<" => Ok"<<std::endl;}
151 // else{std::cout << "checkValue : "<<testName<<" => WRONG!!!!"<<std::endl;}
152 159 return b;
153 }
154
155 ///Check given value compare to the reference size
156 /** @param testName : name of the current test
157 * @param vecData : vector of data to be checked
158 * @param vecReferenceData : vector of reference data
159 * @return true on success, false otherwise
160 */
161 template<typename T, typename U>
162 160 bool checkValue(const std::string & testName, const std::list<std::pair<T, U> > & vecData, const std::list<std::pair<T, U> > & vecReferenceData){
163
2/2
✓ Branch 2 taken 1 times.
✓ Branch 3 taken 2 times.
160 if(vecData.size() != vecReferenceData.size()){
164
8/8
✓ Branch 1 taken 1 times.
✓ Branch 4 taken 1 times.
✓ Branch 7 taken 1 times.
✓ Branch 11 taken 1 times.
✓ Branch 14 taken 1 times.
✓ Branch 18 taken 1 times.
✓ Branch 21 taken 1 times.
✓ Branch 24 taken 1 times.
1 std::cout << "checkValue : "<<testName<<" => vecData.size(" << vecData.size() << ") != vecReferenceData.size("<<vecReferenceData.size()<<")" << std::endl;
165 1 return false;
166 }
167 159 bool b(true);
168 159 typename std::list<std::pair<T,U> >::const_iterator itData = vecData.begin();
169 159 typename std::list<std::pair<T,U> >::const_iterator itRef = vecReferenceData.begin();
170 159 size_t i(0lu);
171
5/6
✓ Branch 2 taken 4 times.
✓ Branch 3 taken 2 times.
✓ Branch 6 taken 4 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 4 times.
✓ Branch 9 taken 2 times.
1733 while(itData != vecData.end() && itRef != vecReferenceData.end()){
172 1574 b &= itData->first == itRef->first;
173 1574 b &= itData->second == itRef->second;
174
2/2
✓ Branch 0 taken 1 times.
✓ Branch 1 taken 3 times.
1574 if(!b){
175
16/16
✓ Branch 1 taken 1 times.
✓ Branch 4 taken 1 times.
✓ Branch 7 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 13 taken 1 times.
✓ Branch 17 taken 1 times.
✓ Branch 20 taken 1 times.
✓ Branch 24 taken 1 times.
✓ Branch 27 taken 1 times.
✓ Branch 30 taken 1 times.
✓ Branch 33 taken 1 times.
✓ Branch 37 taken 1 times.
✓ Branch 40 taken 1 times.
✓ Branch 44 taken 1 times.
✓ Branch 47 taken 1 times.
✓ Branch 50 taken 1 times.
1 std::cout << "checkValue : "<<testName<<" => vecData["<<i<<"](" << itData->first << ", " << itData->second << ") != vecReferenceData["<<i<<"]("<<itRef->first << ","<<itRef->second <<")" << std::endl;
176 }
177 1574 ++i;
178 1574 ++itData;
179 1574 ++itRef;
180 }
181 // if(b){std::cout << "checkValue : "<<testName<<" => Ok"<<std::endl;}
182 // else{std::cout << "checkValue : "<<testName<<" => WRONG!!!!"<<std::endl;}
183 159 return b;
184 }
185
186 #endif
187
188