diff --git a/src/main/kotlin/org/jetbrains/research/testspark/display/generatedTests/TopButtonsPanelBuilder.kt b/src/main/kotlin/org/jetbrains/research/testspark/display/generatedTests/TopButtonsPanelBuilder.kt index c51ec0ebb..844a3f83f 100644 --- a/src/main/kotlin/org/jetbrains/research/testspark/display/generatedTests/TopButtonsPanelBuilder.kt +++ b/src/main/kotlin/org/jetbrains/research/testspark/display/generatedTests/TopButtonsPanelBuilder.kt @@ -40,13 +40,15 @@ class TopButtonsPanelBuilder { * Updates the labels. */ fun update(generatedTestsTabData: GeneratedTestsTabData) { - var numberOfPassedTests = 0 - for (testCasePanelFactory in generatedTestsTabData.testCasePanelFactories) { - if (testCasePanelFactory.isRemoved()) continue - val error = testCasePanelFactory.getError() - if ((error is String) && error.isEmpty()) { - numberOfPassedTests++ - } + val passedTestsCount = generatedTestsTabData.testCasePanelFactories + .filter { !it.isRemoved() } + .count { it.getError()?.isEmpty() == true } + + val removedTestsCount = generatedTestsTabData.testCasePanelFactories.count { it.isRemoved() } + + if (generatedTestsTabData.testCasePanelFactories.size == removedTestsCount) { + removeAllButton.doClick() + return } testsSelectedLabel.text = String.format( testsSelectedText, @@ -56,7 +58,7 @@ class TopButtonsPanelBuilder { testsPassedLabel.text = String.format( testsPassedText, - numberOfPassedTests, + passedTestsCount, generatedTestsTabData.testCaseNameToPanel.size, ) runAllButton.isEnabled = false