diff --git a/plugins/junit/src/com/intellij/execution/junit/TestDirectory.java b/plugins/junit/src/com/intellij/execution/junit/TestDirectory.java index 7a09cd0069d5..9f5559794e1b 100644 --- a/plugins/junit/src/com/intellij/execution/junit/TestDirectory.java +++ b/plugins/junit/src/com/intellij/execution/junit/TestDirectory.java @@ -28,10 +28,7 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.util.io.FileUtil; import com.intellij.openapi.vfs.LocalFileSystem; import com.intellij.openapi.vfs.VirtualFile; -import com.intellij.psi.JavaDirectoryService; -import com.intellij.psi.PsiDirectory; -import com.intellij.psi.PsiManager; -import com.intellij.psi.PsiPackage; +import com.intellij.psi.*; import com.intellij.psi.search.GlobalSearchScope; import com.intellij.psi.search.GlobalSearchScopes; @@ -118,4 +115,21 @@ class TestDirectory extends TestPackage { } return aPackage; } + + @Override + public boolean isConfiguredByElement(JUnitConfiguration configuration, + PsiClass testClass, + PsiMethod testMethod, + PsiPackage testPackage) { + if (JUnitConfiguration.TEST_DIRECTORY.equals(configuration.getPersistentData().TEST_OBJECT)) { + final PsiDirectory[] directories = testPackage.getDirectories(configuration.getConfigurationModule().getSearchScope()); + final String dirName = configuration.getPersistentData().getDirName(); + if (dirName != null) { + for (PsiDirectory directory : directories) { + if (dirName.equals(directory.getVirtualFile().getPath())) return true; + } + } + } + return false; + } }