restore constructor for application level UndoManager

This commit is contained in:
Vladimir Krivosheev
2018-09-25 15:42:24 +02:00
parent 5763152d22
commit 6fc4bb4b33
2 changed files with 28 additions and 12 deletions
@@ -85,6 +85,10 @@ public class UndoManagerImpl extends UndoManager implements Disposable {
return Registry.intValue("undo.documentUndoLimit");
}
public UndoManagerImpl() {
this(null);
}
public UndoManagerImpl(@Nullable ProjectEx project) {
myProject = project;
@@ -93,16 +93,20 @@ class HeavyIdeaTestFixtureImpl extends BaseFixture implements HeavyIdeaTestFixtu
@Override
public void tearDown() throws Exception {
RunAll runAll = new RunAll()
.append(() -> LightPlatformTestCase.doTearDown(getProject(), myApplication))
.append(() -> {
for (ModuleFixtureBuilder moduleFixtureBuilder : myModuleFixtureBuilders) {
moduleFixtureBuilder.getFixture().tearDown();
}
})
.append(() -> EdtTestUtil.runInEdtAndWait(() -> PlatformTestCase.closeAndDisposeProjectAndCheckThatNoOpenProjects(getProject())))
.append(() -> InjectedLanguageManagerImpl.checkInjectorsAreDisposed(getProject()))
.append(() -> myProject = null);
RunAll runAll = new RunAll();
if (myProject != null) {
runAll = runAll
.append(() -> LightPlatformTestCase.doTearDown(getProject(), myApplication))
.append(() -> {
for (ModuleFixtureBuilder moduleFixtureBuilder : myModuleFixtureBuilders) {
moduleFixtureBuilder.getFixture().tearDown();
}
})
.append(() -> EdtTestUtil.runInEdtAndWait(() -> PlatformTestCase.closeAndDisposeProjectAndCheckThatNoOpenProjects(getProject())))
.append(() -> InjectedLanguageManagerImpl.checkInjectorsAreDisposed(getProject()))
.append(() -> myProject = null);
}
JarFileSystemImpl.cleanupForNextTest();
@@ -128,8 +132,16 @@ class HeavyIdeaTestFixtureImpl extends BaseFixture implements HeavyIdeaTestFixtu
runAll
.append(super::tearDown)
.append(() -> myEditorListenerTracker.checkListenersLeak())
.append(() -> myThreadTracker.checkLeak())
.append(() -> {
if (myEditorListenerTracker != null) {
myEditorListenerTracker.checkListenersLeak();
}
})
.append(() -> {
if (myThreadTracker != null) {
myThreadTracker.checkLeak();
}
})
.append(LightPlatformTestCase::checkEditorsReleased)
.append(() -> {
if (myOldSdks != null) {