@@ -118,26 +118,16 @@ public ThresholdTypeFlags GetThresholdTypesBelowThreshold(CoverageSummary summar
118118            { 
119119                case  ThresholdStatistic . Minimum : 
120120                    { 
121+                         if  ( ! Modules . Any ( ) ) 
122+                             thresholdTypeFlags  =  CompareThresholdValues ( thresholdTypeFlagValues ,  thresholdTypeFlags ,  0 ,  0 ,  0 ) ; 
123+ 
121124                        foreach  ( var  module  in  Modules ) 
122125                        { 
123126                            double  line  =  summary . CalculateLineCoverage ( module . Value ) . Percent ; 
124127                            double  branch  =  summary . CalculateBranchCoverage ( module . Value ) . Percent ; 
125128                            double  method  =  summary . CalculateMethodCoverage ( module . Value ) . Percent ; 
126-                             
127-                             if  ( thresholdTypeFlagValues . TryGetValue ( ThresholdTypeFlags . Line ,  out  var  lineThresholdValue )  &&  lineThresholdValue  >  line ) 
128-                             { 
129-                                 thresholdTypeFlags  |=  ThresholdTypeFlags . Line ; 
130-                             } 
131129
132-                             if  ( thresholdTypeFlagValues . TryGetValue ( ThresholdTypeFlags . Branch ,  out  var  branchThresholdValue )  &&  branchThresholdValue  >  branch ) 
133-                             { 
134-                                 thresholdTypeFlags  |=  ThresholdTypeFlags . Branch ; 
135-                             } 
136- 
137-                             if  ( thresholdTypeFlagValues . TryGetValue ( ThresholdTypeFlags . Method ,  out  var  methodThresholdValue )  &&  methodThresholdValue  >  method ) 
138-                             { 
139-                                 thresholdTypeFlags  |=  ThresholdTypeFlags . Method ; 
140-                             } 
130+                             thresholdTypeFlags  =  CompareThresholdValues ( thresholdTypeFlagValues ,  thresholdTypeFlags ,  line ,  branch ,  method ) ; 
141131                        } 
142132                    } 
143133                    break ; 
@@ -146,21 +136,8 @@ public ThresholdTypeFlags GetThresholdTypesBelowThreshold(CoverageSummary summar
146136                        double  line  =  summary . CalculateLineCoverage ( Modules ) . AverageModulePercent ; 
147137                        double  branch  =  summary . CalculateBranchCoverage ( Modules ) . AverageModulePercent ; 
148138                        double  method  =  summary . CalculateMethodCoverage ( Modules ) . AverageModulePercent ; 
149-                         
150-                         if  ( thresholdTypeFlagValues . TryGetValue ( ThresholdTypeFlags . Line ,  out  var  lineThresholdValue )  &&  lineThresholdValue  >  line ) 
151-                         { 
152-                             thresholdTypeFlags  |=  ThresholdTypeFlags . Line ; 
153-                         } 
154139
155-                         if  ( thresholdTypeFlagValues . TryGetValue ( ThresholdTypeFlags . Branch ,  out  var  branchThresholdValue )  &&  branchThresholdValue  >  branch ) 
156-                         { 
157-                             thresholdTypeFlags  |=  ThresholdTypeFlags . Branch ; 
158-                         } 
159- 
160-                         if  ( thresholdTypeFlagValues . TryGetValue ( ThresholdTypeFlags . Method ,  out  var  methodThresholdValue )  &&  methodThresholdValue  >  method ) 
161-                         { 
162-                             thresholdTypeFlags  |=  ThresholdTypeFlags . Method ; 
163-                         } 
140+                         thresholdTypeFlags  =  CompareThresholdValues ( thresholdTypeFlagValues ,  thresholdTypeFlags ,  line ,  branch ,  method ) ; 
164141                    } 
165142                    break ; 
166143                case  ThresholdStatistic . Total : 
@@ -169,25 +146,37 @@ public ThresholdTypeFlags GetThresholdTypesBelowThreshold(CoverageSummary summar
169146                        double  branch  =  summary . CalculateBranchCoverage ( Modules ) . Percent ; 
170147                        double  method  =  summary . CalculateMethodCoverage ( Modules ) . Percent ; 
171148
172-                         if  ( thresholdTypeFlagValues . TryGetValue ( ThresholdTypeFlags . Line ,  out  var  lineThresholdValue )  &&  lineThresholdValue  >  line ) 
173-                         { 
174-                             thresholdTypeFlags  |=  ThresholdTypeFlags . Line ; 
175-                         } 
176- 
177-                         if  ( thresholdTypeFlagValues . TryGetValue ( ThresholdTypeFlags . Branch ,  out  var  branchThresholdValue )  &&  branchThresholdValue  >  branch ) 
178-                         { 
179-                             thresholdTypeFlags  |=  ThresholdTypeFlags . Branch ; 
180-                         } 
181- 
182-                         if  ( thresholdTypeFlagValues . TryGetValue ( ThresholdTypeFlags . Method ,  out  var  methodThresholdValue )  &&  methodThresholdValue  >  method ) 
183-                         { 
184-                             thresholdTypeFlags  |=  ThresholdTypeFlags . Method ; 
185-                         } 
149+                         thresholdTypeFlags  =  CompareThresholdValues ( thresholdTypeFlagValues ,  thresholdTypeFlags ,  line ,  branch ,  method ) ; 
186150                    } 
187151                    break ; 
188152            } 
189153
190154            return  thresholdTypeFlags ; 
191155        } 
156+ 
157+         private  static ThresholdTypeFlags  CompareThresholdValues ( 
158+             Dictionary < ThresholdTypeFlags ,  double >  thresholdTypeFlagValues ,  ThresholdTypeFlags  thresholdTypeFlags , 
159+             double  line ,  double  branch ,  double  method ) 
160+         { 
161+             if  ( thresholdTypeFlagValues . TryGetValue ( ThresholdTypeFlags . Line ,  out  var  lineThresholdValue )  && 
162+                 lineThresholdValue  >  line ) 
163+             { 
164+                 thresholdTypeFlags  |=  ThresholdTypeFlags . Line ; 
165+             } 
166+ 
167+             if  ( thresholdTypeFlagValues . TryGetValue ( ThresholdTypeFlags . Branch ,  out  var  branchThresholdValue )  && 
168+                 branchThresholdValue  >  branch ) 
169+             { 
170+                 thresholdTypeFlags  |=  ThresholdTypeFlags . Branch ; 
171+             } 
172+ 
173+             if  ( thresholdTypeFlagValues . TryGetValue ( ThresholdTypeFlags . Method ,  out  var  methodThresholdValue )  && 
174+                 methodThresholdValue  >  method ) 
175+             { 
176+                 thresholdTypeFlags  |=  ThresholdTypeFlags . Method ; 
177+             } 
178+ 
179+             return  thresholdTypeFlags ; 
180+         } 
192181    } 
193182} 
0 commit comments