@@ -52,8 +52,12 @@ public CoverageDetails CalculateLineCoverage(Documents documents)
5252
5353 public CoverageDetails CalculateLineCoverage ( Modules modules )
5454 {
55- var details = new CoverageDetails ( ) ;
55+ var details = new CoverageDetails { Modules = modules } ;
5656 var accumPercent = 0.0D ;
57+
58+ if ( modules . Count == 0 )
59+ return details ;
60+
5761 foreach ( var module in modules )
5862 {
5963 var moduleCoverage = CalculateLineCoverage ( module . Value ) ;
@@ -185,16 +189,20 @@ public CoverageDetails CalculateBranchCoverage(Documents documents)
185189
186190 public CoverageDetails CalculateBranchCoverage ( Modules modules )
187191 {
188- var details = new CoverageDetails ( ) ;
192+ var details = new CoverageDetails { Modules = modules } ;
189193 var accumPercent = 0.0D ;
194+
195+ if ( modules . Count == 0 )
196+ return details ;
197+
190198 foreach ( var module in modules )
191199 {
192200 var moduleCoverage = CalculateBranchCoverage ( module . Value ) ;
193201 details . Covered += moduleCoverage . Covered ;
194202 details . Total += moduleCoverage . Total ;
195203 accumPercent += moduleCoverage . Percent ;
196204 }
197- details . AverageModulePercent = accumPercent / modules . Count ;
205+ details . AverageModulePercent = modules . Count == 0 ? 0 : accumPercent / modules . Count ;
198206 return details ;
199207 }
200208
@@ -245,16 +253,20 @@ public CoverageDetails CalculateMethodCoverage(Documents documents)
245253
246254 public CoverageDetails CalculateMethodCoverage ( Modules modules )
247255 {
248- var details = new CoverageDetails ( ) ;
256+ var details = new CoverageDetails { Modules = modules } ;
249257 var accumPercent = 0.0D ;
258+
259+ if ( modules . Count == 0 )
260+ return details ;
261+
250262 foreach ( var module in modules )
251263 {
252264 var moduleCoverage = CalculateMethodCoverage ( module . Value ) ;
253265 details . Covered += moduleCoverage . Covered ;
254266 details . Total += moduleCoverage . Total ;
255267 accumPercent += moduleCoverage . Percent ;
256268 }
257- details . AverageModulePercent = accumPercent / modules . Count ;
269+ details . AverageModulePercent = modules . Count == 0 ? 0 : accumPercent / modules . Count ;
258270 return details ;
259271 }
260272 }
0 commit comments