From 68e39b4b5aa6786bfff0100bfc8d5fc4511d3ed3 Mon Sep 17 00:00:00 2001 From: Andrey Starovoyt Date: Tue, 29 Sep 2015 14:16:50 +0300 Subject: [PATCH] test framework: add a way set a custom virtual file filter for DaemonAnalyzerTestCase --- .../codeInsight/daemon/DaemonAnalyzerTestCase.java | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/java/testFramework/src/com/intellij/codeInsight/daemon/DaemonAnalyzerTestCase.java b/java/testFramework/src/com/intellij/codeInsight/daemon/DaemonAnalyzerTestCase.java index e8a6823e86ee..8a0195dd0d6a 100644 --- a/java/testFramework/src/com/intellij/codeInsight/daemon/DaemonAnalyzerTestCase.java +++ b/java/testFramework/src/com/intellij/codeInsight/daemon/DaemonAnalyzerTestCase.java @@ -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