testng: disable run yaml when no testng can be detected in the classpath (IDEA-244870)

GitOrigin-RevId: 6ed0070692c7db55b6697b8d7a3ee856a7aeeba1
This commit is contained in:
Anna Kozlova
2020-07-01 18:42:57 +00:00
committed by intellij-monorepo-bot
parent ca418b9445
commit 7fdbbc6abd
@@ -6,6 +6,7 @@ import com.intellij.execution.actions.ConfigurationContext;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.util.Ref;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.JavaPsiFacade;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiFile;
import com.theoryinpractice.testng.model.TestType;
@@ -20,6 +21,10 @@ public class AbstractTestNGSuiteConfigurationProducer extends TestNGConfiguratio
final PsiElement element = context.getPsiLocation();
final PsiFile containingFile = element != null ? element.getContainingFile() : null;
if (containingFile == null) return false;
if (JavaPsiFacade.getInstance(configuration.project)
.findClass(TestNGUtil.TEST_ANNOTATION_FQN, containingFile.getResolveScope()) != null) {
return false;
}
final VirtualFile virtualFile = containingFile.getVirtualFile();
if (virtualFile == null || !virtualFile.isValid()) return false;
if (!TestNGUtil.isTestngSuiteFile(virtualFile)) return false;