@@ -54,6 +54,7 @@ public TestExplorerViewModel(IVBE vbe,
5454 RefreshCommand = new DelegateCommand ( LogManager . GetCurrentClassLogger ( ) , ExecuteRefreshCommand , CanExecuteRefreshCommand ) ;
5555 RepeatLastRunCommand = new DelegateCommand ( LogManager . GetCurrentClassLogger ( ) , ExecuteRepeatLastRunCommand , CanExecuteRepeatLastRunCommand ) ;
5656 RunNotExecutedTestsCommand = new DelegateCommand ( LogManager . GetCurrentClassLogger ( ) , ExecuteRunNotExecutedTestsCommand , CanExecuteRunNotExecutedTestsCommand ) ;
57+ RunInconclusiveTestsCommand = new DelegateCommand ( LogManager . GetCurrentClassLogger ( ) , ExecuteRunInconclusiveTestsCommand , CanExecuteRunInconclusiveTestsCommand ) ;
5758 RunFailedTestsCommand = new DelegateCommand ( LogManager . GetCurrentClassLogger ( ) , ExecuteRunFailedTestsCommand , CanExecuteRunFailedTestsCommand ) ;
5859 RunPassedTestsCommand = new DelegateCommand ( LogManager . GetCurrentClassLogger ( ) , ExecuteRunPassedTestsCommand , CanExecuteRunPassedTestsCommand ) ;
5960 RunSelectedTestCommand = new DelegateCommand ( LogManager . GetCurrentClassLogger ( ) , ExecuteSelectedTestCommand , CanExecuteSelectedTestCommand ) ;
@@ -97,6 +98,11 @@ private bool CanExecuteRunNotExecutedTestsCommand(object obj)
9798 return _vbe . IsInDesignMode && AllowedRunStates . Contains ( _state . Status ) && Model . Tests . Any ( test => test . Result . Outcome == TestOutcome . Unknown ) ;
9899 }
99100
101+ private bool CanExecuteRunInconclusiveTestsCommand ( object obj )
102+ {
103+ return _vbe . IsInDesignMode && AllowedRunStates . Contains ( _state . Status ) & Model . Tests . Any ( test => test . Result . Outcome == TestOutcome . Inconclusive ) ;
104+ }
105+
100106 private bool CanExecuteRepeatLastRunCommand ( object obj )
101107 {
102108 return _vbe . IsInDesignMode && AllowedRunStates . Contains ( _state . Status ) && Model . LastRun . Any ( ) ;
@@ -170,6 +176,8 @@ public bool GroupByLocation
170176
171177 public CommandBase RunNotExecutedTestsCommand { get ; }
172178
179+ public CommandBase RunInconclusiveTestsCommand { get ; }
180+
173181 public CommandBase RunFailedTestsCommand { get ; }
174182
175183 public CommandBase RunPassedTestsCommand { get ; }
@@ -256,6 +264,23 @@ private void ExecuteRunNotExecutedTestsCommand(object parameter)
256264 TotalDuration = stopwatch . ElapsedMilliseconds ;
257265 }
258266
267+ private void ExecuteRunInconclusiveTestsCommand ( object parameter )
268+ {
269+ EnsureRubberduckIsReferencedForEarlyBoundTests ( ) ;
270+
271+ Model . ClearLastRun ( ) ;
272+
273+ var stopwatch = new Stopwatch ( ) ;
274+ Model . IsBusy = true ;
275+
276+ stopwatch . Start ( ) ;
277+ _testEngine . Run ( Model . Tests . Where ( test => test . Result . Outcome == TestOutcome . Inconclusive ) ) ;
278+ stopwatch . Stop ( ) ;
279+
280+ Model . IsBusy = false ;
281+ TotalDuration = stopwatch . ElapsedMilliseconds ;
282+ }
283+
259284 private void ExecuteRunFailedTestsCommand ( object parameter )
260285 {
261286 EnsureRubberduckIsReferencedForEarlyBoundTests ( ) ;
0 commit comments