src/eric7/Testing/TestingWidget.py

branch
eric7
changeset 9313
6bac6775abb2
parent 9311
8e588f403fd9
child 9371
1da8bc75946f
child 9388
bfe7ea6599a3
diff -r 490f9539e535 -r 6bac6775abb2 src/eric7/Testing/TestingWidget.py
--- a/src/eric7/Testing/TestingWidget.py	Mon Sep 05 18:08:58 2022 +0200
+++ b/src/eric7/Testing/TestingWidget.py	Tue Sep 06 13:39:18 2022 +0200
@@ -685,6 +685,7 @@
         self.__resetResults()
         self.__updateCoverage()
         self.__updateMarkerSupport()
+        self.__updatePatternSupport()
 
     @pyqtSlot()
     def __updateCoverage(self):
@@ -759,6 +760,25 @@
                 self.__markersWindow.showMarkers(markers)
 
     @pyqtSlot()
+    def __updatePatternSupport(self):
+        """
+        Private slot to update the state of the test name pattern line edit depending on
+        the selected framework's capabilities.
+        """
+        supportsPatterns = False
+
+        venvName = self.venvComboBox.currentText()
+        if venvName:
+            framework = self.frameworkComboBox.currentText()
+            if framework:
+                interpreter = self.__venvManager.getVirtualenvInterpreter(venvName)
+                executor = self.__frameworkRegistry.createExecutor(framework, self)
+                supportsPatterns = executor.supportsPatterns(interpreter)
+
+        self.testNamePatternEdit.setEnabled(supportsPatterns)
+        self.testNamePatternEdit.clear()
+
+    @pyqtSlot()
     def on_versionsButton_clicked(self):
         """
         Private slot to show the versions of available plugins.
@@ -847,6 +867,7 @@
             discoveryStart=discoveryStart,
             testFilename=testFileName,
             testName=testName,
+            testNamePattern=self.testNamePatternEdit.text(),
             testMarkerExpression=self.markerExpressionEdit.text(),
             failFast=self.failfastCheckBox.isChecked(),
             failedOnly=failedOnly,

eric ide

mercurial