From c6bc8a6982f61206017b7aee159fd8416f5ae562 Mon Sep 17 00:00:00 2001 From: Ekaterina Tuzova Date: Tue, 10 Dec 2013 15:47:51 +0400 Subject: [PATCH] improved user experience with run configuration producers --- .../python/testing/PythonTestConfigurationProducer.java | 6 ++++++ .../doctest/PythonDocTestConfigurationProducer.java | 8 ++++++++ 2 files changed, 14 insertions(+) diff --git a/python/src/com/jetbrains/python/testing/PythonTestConfigurationProducer.java b/python/src/com/jetbrains/python/testing/PythonTestConfigurationProducer.java index 3875cd31ed5a..8c28e08d4833 100644 --- a/python/src/com/jetbrains/python/testing/PythonTestConfigurationProducer.java +++ b/python/src/com/jetbrains/python/testing/PythonTestConfigurationProducer.java @@ -18,6 +18,7 @@ package com.jetbrains.python.testing; import com.google.common.collect.Sets; import com.intellij.execution.Location; import com.intellij.execution.actions.ConfigurationContext; +import com.intellij.execution.actions.ConfigurationFromContext; import com.intellij.execution.actions.RunConfigurationProducer; import com.intellij.execution.configurations.ConfigurationFactory; import com.intellij.facet.Facet; @@ -39,6 +40,7 @@ import com.intellij.psi.util.PsiTreeUtil; import com.jetbrains.python.PythonModuleTypeBase; import com.jetbrains.python.facet.PythonFacetSettings; import com.jetbrains.python.psi.*; +import com.jetbrains.python.run.PythonRunConfigurationProducer; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -254,4 +256,8 @@ abstract public class PythonTestConfigurationProducer extends RunConfigurationPr return PythonUnitTestUtil.getTestCaseClassesFromFile(pyFile); } + @Override + public boolean isPreferredConfiguration(ConfigurationFromContext self, ConfigurationFromContext other) { + return other.isProducedBy(PythonTestConfigurationProducer.class) || other.isProducedBy(PythonRunConfigurationProducer.class); + } } \ No newline at end of file diff --git a/python/src/com/jetbrains/python/testing/doctest/PythonDocTestConfigurationProducer.java b/python/src/com/jetbrains/python/testing/doctest/PythonDocTestConfigurationProducer.java index cfa2be7caee1..e3eef2958409 100644 --- a/python/src/com/jetbrains/python/testing/doctest/PythonDocTestConfigurationProducer.java +++ b/python/src/com/jetbrains/python/testing/doctest/PythonDocTestConfigurationProducer.java @@ -21,6 +21,8 @@ package com.jetbrains.python.testing.doctest; import com.intellij.execution.Location; import com.intellij.openapi.module.Module; +import com.intellij.openapi.project.Project; +import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import com.intellij.psi.PsiRecursiveElementVisitor; @@ -85,4 +87,10 @@ public class PythonDocTestConfigurationProducer extends PythonTestConfigurationP } } } + + @Override + protected boolean isTestFolder(@NotNull VirtualFile virtualFile, @NotNull Project project) { + return false; + } + } \ No newline at end of file