blob: a8d2feae4fec4eb49633354deb27e38fb4c59be3 [file] [log] [blame]
package org.jetbrains.android.run.testing;
import com.intellij.execution.junit.JUnitUtil;
import com.intellij.execution.ui.ConfigurationModuleSelector;
import com.intellij.ide.util.ClassFilter;
import com.intellij.ide.util.TreeClassChooser;
import com.intellij.ide.util.TreeClassChooserFactory;
import com.intellij.openapi.project.Project;
import com.intellij.psi.PsiClass;
import com.intellij.psi.search.GlobalSearchScope;
import org.jetbrains.android.run.AndroidClassBrowserBase;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
/**
* @author Eugene.Kudelevsky
*/
public class AndroidTestClassBrowser extends AndroidClassBrowserBase {
public AndroidTestClassBrowser(@NotNull Project project,
@NotNull ConfigurationModuleSelector moduleSelector,
@NotNull String dialogTitle,
boolean includeLibraryClasses) {
super(project, moduleSelector, dialogTitle, includeLibraryClasses);
}
@Nullable
@Override
protected TreeClassChooser createTreeClassChooser(@NotNull Project project,
@NotNull GlobalSearchScope scope,
@Nullable PsiClass initialSelection, @NotNull final ClassFilter classFilter) {
return TreeClassChooserFactory.getInstance(project).createNoInnerClassesScopeChooser(myDialogTitle, scope, new ClassFilter() {
@Override
public boolean isAccepted(PsiClass aClass) {
return classFilter.isAccepted(aClass) && JUnitUtil.isTestClass(aClass);
}
}, initialSelection);
}
}