diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/VcsDirtyScopeVfsListener.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/VcsDirtyScopeVfsListener.java index bc22cdf3acd5..789dbc9035c5 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/VcsDirtyScopeVfsListener.java +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/VcsDirtyScopeVfsListener.java @@ -47,12 +47,19 @@ import java.util.Map; public class VcsDirtyScopeVfsListener implements ApplicationComponent, BulkFileListener { private final ProjectLocator myProjectLocator; private final MessageBusConnection myMessageBusConnection; + // for tests only + private boolean myForbid; public VcsDirtyScopeVfsListener() { myProjectLocator = ProjectLocator.getInstance(); myMessageBusConnection = ApplicationManager.getApplication().getMessageBus().connect(); } + public void setForbid(boolean forbid) { + assert ApplicationManager.getApplication().isUnitTestMode(); + myForbid = forbid; + } + @NotNull public String getComponentName() { return VcsDirtyScopeVfsListener.class.getName(); @@ -68,6 +75,7 @@ public class VcsDirtyScopeVfsListener implements ApplicationComponent, BulkFileL @Override public void before(List events) { + if (myForbid) return; final FileAndDirsCollector dirtyFilesAndDirs = new FileAndDirsCollector(); // collect files and directories - sources of events for (VFileEvent event : events) { @@ -89,6 +97,7 @@ public class VcsDirtyScopeVfsListener implements ApplicationComponent, BulkFileL @Override public void after(List events) { + if (myForbid) return; final FileAndDirsCollector dirtyFilesAndDirs = new FileAndDirsCollector(); // collect files and directories - sources of events for (VFileEvent event : events) { diff --git a/plugins/svn4idea/lib/svnkit-javahl.jar b/plugins/svn4idea/lib/svnkit-javahl.jar index aa143ae37dd3..f5615cf20595 100644 Binary files a/plugins/svn4idea/lib/svnkit-javahl.jar and b/plugins/svn4idea/lib/svnkit-javahl.jar differ diff --git a/plugins/svn4idea/lib/svnkit-javahl16.zip b/plugins/svn4idea/lib/svnkit-javahl16.zip index 7fd682bcfa07..9104eeabdd42 100644 Binary files a/plugins/svn4idea/lib/svnkit-javahl16.zip and b/plugins/svn4idea/lib/svnkit-javahl16.zip differ diff --git a/plugins/svn4idea/lib/svnkit.jar b/plugins/svn4idea/lib/svnkit.jar index ef03e4373508..e7f60fae5f49 100644 Binary files a/plugins/svn4idea/lib/svnkit.jar and b/plugins/svn4idea/lib/svnkit.jar differ diff --git a/plugins/svn4idea/lib/svnkitsrc.zip b/plugins/svn4idea/lib/svnkitsrc.zip index 2e1c77a4fcc1..49b3ac842c71 100644 Binary files a/plugins/svn4idea/lib/svnkitsrc.zip and b/plugins/svn4idea/lib/svnkitsrc.zip differ diff --git a/plugins/svn4idea/testSource/org/jetbrains/idea/svn17/MultipleRefreshesTest.java b/plugins/svn4idea/testSource/org/jetbrains/idea/svn17/MultipleRefreshesTest.java index 95c19f71fb37..52efd8412809 100644 --- a/plugins/svn4idea/testSource/org/jetbrains/idea/svn17/MultipleRefreshesTest.java +++ b/plugins/svn4idea/testSource/org/jetbrains/idea/svn17/MultipleRefreshesTest.java @@ -47,9 +47,7 @@ public class MultipleRefreshesTest { @Parameterized.Parameters public static List data() { final ArrayList result = new ArrayList(10); - //for (int i = 0; i < 100; i++) { - // todo debug - for (int i = 0; i < 1; i++) { + for (int i = 0; i < 100; i++) { result.add(new Object[]{i}); } return result; diff --git a/plugins/svn4idea/testSource/org/jetbrains/idea/svn17/SvnRenameTest.java b/plugins/svn4idea/testSource/org/jetbrains/idea/svn17/SvnRenameTest.java index 00808a2641bc..2e4c7fdd99e1 100644 --- a/plugins/svn4idea/testSource/org/jetbrains/idea/svn17/SvnRenameTest.java +++ b/plugins/svn4idea/testSource/org/jetbrains/idea/svn17/SvnRenameTest.java @@ -225,7 +225,6 @@ public class SvnRenameTest extends SvnTestCase { Assert.assertTrue(new File(unversionedDirFile, "c.txt").exists()); } - @Bombed(user = "irengrig", year = 2012, month = Calendar.FEBRUARY, day = 25, description = "waiting for svnkit fix (reported 18.02)") // IDEA-13824 @Test public void testRenameFileRenameDir() throws Exception { diff --git a/plugins/svn4idea/testSource/org/jetbrains/idea/svn17/SvnTestDirtyScopeStateTest.java b/plugins/svn4idea/testSource/org/jetbrains/idea/svn17/SvnTestDirtyScopeStateTest.java index 04b11bb95601..d32536e83425 100644 --- a/plugins/svn4idea/testSource/org/jetbrains/idea/svn17/SvnTestDirtyScopeStateTest.java +++ b/plugins/svn4idea/testSource/org/jetbrains/idea/svn17/SvnTestDirtyScopeStateTest.java @@ -1,13 +1,17 @@ package org.jetbrains.idea.svn17; import com.intellij.idea.Bombed; +import com.intellij.openapi.application.ApplicationInfo; +import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.command.WriteCommandAction; +import com.intellij.openapi.components.ComponentManager; import com.intellij.openapi.vcs.FilePath; import com.intellij.openapi.vcs.FilePathImpl; import com.intellij.openapi.vcs.ObjectsConvertor; import com.intellij.openapi.vcs.VcsConfiguration; import com.intellij.openapi.vcs.changes.VcsDirtyScopeManager; import com.intellij.openapi.vcs.changes.VcsDirtyScopeManagerImpl; +import com.intellij.openapi.vcs.changes.VcsDirtyScopeVfsListener; import com.intellij.openapi.vfs.VirtualFile; import junit.framework.Assert; import org.junit.Test; @@ -23,6 +27,8 @@ public class SvnTestDirtyScopeStateTest extends SvnTestCase { super.setUp(); myInitChangeListManager = false; + final VcsDirtyScopeVfsListener vfsListener = ApplicationManager.getApplication().getComponent(VcsDirtyScopeVfsListener.class); + vfsListener.setForbid(true); } @Test @@ -35,6 +41,7 @@ public class SvnTestDirtyScopeStateTest extends SvnTestCase { final VirtualFile fileB = createFileInCommand("b.txt", "old content"); final VirtualFile fileC = createFileInCommand("c.txt", "old content"); final VirtualFile fileD = createFileInCommand("d.txt", "old content"); + waitABit(); final List list = ObjectsConvertor.vf2fp(Arrays.asList(file, fileB, fileC, fileD)); @@ -70,6 +77,15 @@ public class SvnTestDirtyScopeStateTest extends SvnTestCase { Assert.assertTrue(! dirty3.contains(new FilePathImpl(fileD))); } + private void waitABit() { + try { + Thread.sleep(100); + } + catch (InterruptedException e) { + // + } + } + @Test public void testOkToAddScopeUnderWriteAction() throws Exception { enableSilentOperation(VcsConfiguration.StandardConfirmation.ADD); @@ -80,6 +96,7 @@ public class SvnTestDirtyScopeStateTest extends SvnTestCase { final VirtualFile fileB = createFileInCommand("b.txt", "old content"); final VirtualFile fileC = createFileInCommand("c.txt", "old content"); final VirtualFile fileD = createFileInCommand("d.txt", "old content"); + waitABit(); final List list = ObjectsConvertor.vf2fp(Arrays.asList(file, fileB, fileC, fileD));