mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
avoid runtime class names in run configurations (IDEA-140615)
This commit is contained in:
@@ -60,7 +60,7 @@ public abstract class ClassBrowser extends BrowseModuleValueActionListener {
|
||||
final PsiClass psiClass = dialog.getSelected();
|
||||
if (psiClass == null) return null;
|
||||
onClassChoosen(psiClass);
|
||||
return JavaExecutionUtil.getRuntimeQualifiedName(psiClass);
|
||||
return psiClass.getQualifiedName();
|
||||
}
|
||||
|
||||
protected TreeClassChooser createClassChooser(ClassFilter.ClassFilterWithScope classFilter) {
|
||||
|
||||
+4
-4
@@ -44,10 +44,7 @@ import com.intellij.openapi.options.SettingsEditor;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.*;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.psi.JavaCodeFragment;
|
||||
import com.intellij.psi.PsiClass;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import com.intellij.psi.PsiMethod;
|
||||
import com.intellij.psi.*;
|
||||
import com.intellij.psi.search.GlobalSearchScope;
|
||||
import com.intellij.ui.*;
|
||||
import com.intellij.ui.components.JBList;
|
||||
@@ -403,6 +400,9 @@ public class TestNGConfigurationEditor extends SettingsEditor<TestNGConfiguratio
|
||||
classField.setComponent(new EditorTextFieldWithBrowseButton(project, true, new JavaCodeFragment.VisibilityChecker() {
|
||||
@Override
|
||||
public Visibility isDeclarationVisible(PsiElement declaration, PsiElement place) {
|
||||
if (declaration instanceof PsiClass && place.getParent() instanceof PsiJavaCodeReferenceElement) {
|
||||
return Visibility.VISIBLE;
|
||||
}
|
||||
try {
|
||||
if (declaration instanceof PsiClass &&
|
||||
new TestClassBrowser(project, TestNGConfigurationEditor.this).getFilter().isAccepted((PsiClass)declaration)) {
|
||||
|
||||
+1
-1
@@ -62,7 +62,7 @@ public class TestClassBrowser extends BrowseModuleValueActionListener
|
||||
return null;
|
||||
} else {
|
||||
onClassChoosen(psiclass);
|
||||
return JavaExecutionUtil.getRuntimeQualifiedName(psiclass);
|
||||
return psiclass.getQualifiedName();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -80,7 +80,8 @@ public class TestNGTestClass extends TestNGTestObject {
|
||||
if (scope == null) {
|
||||
throw new RuntimeConfigurationException("Invalid scope specified");
|
||||
}
|
||||
PsiClass psiClass = JavaPsiFacade.getInstance(myConfig.getProject()).findClass(data.getMainClassName(), scope.getGlobalSearchScope());
|
||||
final PsiManager manager = PsiManager.getInstance(myConfig.getProject());
|
||||
final PsiClass psiClass = ClassUtil.findPsiClass(manager, data.getMainClassName(), null, true, scope.getGlobalSearchScope());
|
||||
if (psiClass == null) throw new RuntimeConfigurationException("Class '" + data.getMainClassName() + "' not found");
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user