test framework: add a way set a custom virtual file filter for DaemonAnalyzerTestCase

This commit is contained in:
Andrey Starovoyt
2015-09-29 14:17:43 +03:00
parent a6b3e74345
commit 68e39b4b5a
@@ -93,7 +93,7 @@ import java.util.Collections;
import java.util.List;
public abstract class DaemonAnalyzerTestCase extends CodeInsightTestCase {
private final FileTreeAccessFilter myFileTreeAccessFilter = new FileTreeAccessFilter();
private VirtualFileFilter myVirtualFileFilter = new FileTreeAccessFilter();
@Override
protected boolean isRunInWriteAction() {
@@ -282,7 +282,7 @@ public abstract class DaemonAnalyzerTestCase extends CodeInsightTestCase {
}
final JavaPsiFacadeEx facade = getJavaFacade();
if (facade != null) {
facade.setAssertOnFileLoadingFilter(myFileTreeAccessFilter, myTestRootDisposable); // check repository work
facade.setAssertOnFileLoadingFilter(myVirtualFileFilter, myTestRootDisposable); // check repository work
}
try {
@@ -306,12 +306,18 @@ public abstract class DaemonAnalyzerTestCase extends CodeInsightTestCase {
return super.createEditor(file);
}
protected void setVirtualFileFilter(@NotNull VirtualFileFilter filter) {
myVirtualFileFilter = filter;
}
protected void allowTreeAccessForFile(@NotNull VirtualFile file) {
myFileTreeAccessFilter.allowTreeAccessForFile(file);
assert myVirtualFileFilter instanceof FileTreeAccessFilter : "configured filter does not support this method";
((FileTreeAccessFilter)myVirtualFileFilter).allowTreeAccessForFile(file);
}
protected void allowTreeAccessForAllFiles() {
myFileTreeAccessFilter.allowTreeAccessForAllFiles();
assert myVirtualFileFilter instanceof FileTreeAccessFilter : "configured filter does not support this method";
((FileTreeAccessFilter)myVirtualFileFilter).allowTreeAccessForAllFiles();
}
@NotNull