@@ -131,6 +131,29 @@ static std::string rate(
131131
132132/* ******************************************************************\
133133
134+ Function: rate_detailed
135+
136+ Inputs:
137+
138+ Outputs:
139+
140+ Purpose:
141+
142+ \*******************************************************************/
143+
144+ static std::string rate_detailed (
145+ std::size_t covered,
146+ std::size_t total,
147+ bool per_cent=false )
148+ {
149+ std::ostringstream oss;
150+ oss << rate (covered, total, per_cent)
151+ << " (" << covered << ' /' << total << ' )' ;
152+ return oss.str ();
153+ }
154+
155+ /* ******************************************************************\
156+
134157Function: goto_program_coverage_recordt::goto_program_coverage_recordt
135158
136159 Inputs:
@@ -187,7 +210,7 @@ goto_program_coverage_recordt::goto_program_coverage_recordt(
187210 from_type (ns, gf_it->first , sig_type));
188211
189212 xml.set_attribute (" line-rate" ,
190- rate (lines_covered, lines_total));
213+ rate_detailed (lines_covered, lines_total));
191214 xml.set_attribute (" branch-rate" ,
192215 rate (branches_covered, branches_total));
193216
@@ -219,10 +242,9 @@ goto_program_coverage_recordt::goto_program_coverage_recordt(
219242 condition.set_attribute (" coverage" , rate (taken, 2 , true ));
220243 }
221244
222- std::ostringstream oss;
223- oss << rate (total_taken, number*2 , true )
224- << " (" << total_taken << ' /' << number*2 << ' )' ;
225- line.set_attribute (" condition-coverage" , oss.str ());
245+ line.set_attribute (
246+ " condition-coverage" ,
247+ rate_detailed (total_taken, number*2 , true ));
226248 }
227249 }
228250}
0 commit comments