Files
openide/java/java-tests/testSrc/com/intellij/projectView/ProjectTreeStateTest.java
Vladimir Krivosheev 6a4ab328d7 HeavyPlatformTestCase - do not create project file explicitly
GitOrigin-RevId: ff63aa57752fdf5303122ca5c6355a0eff722d70
2020-07-14 07:50:01 +00:00

51 lines
1.7 KiB
Java

// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.projectView;
import com.intellij.ide.projectView.impl.AbstractProjectViewPSIPane;
import com.intellij.ide.projectView.impl.ClassesTreeStructureProvider;
import com.intellij.ide.util.treeView.TreeState;
import com.intellij.testFramework.PlatformTestUtil;
import com.intellij.uiDesigner.projectView.FormMergerTreeStructureProvider;
import org.jdom.Element;
import javax.swing.*;
public class ProjectTreeStateTest extends BaseProjectViewTestCase {
private String myExpectedTree;
public void testUpdateProjectView() {
getProjectTreeStructure().setProviders(new ClassesTreeStructureProvider(myProject), new FormMergerTreeStructureProvider(myProject));
AbstractProjectViewPSIPane pane = myStructure.createPane();
JTree tree = pane.getTree();
PlatformTestUtil.assertTreeEqual(tree, myExpectedTree, true);
TreeState treeState = TreeState.createOn(tree);
doTestState(treeState);
Element stored = new Element("Root");
treeState.writeExternal(stored);
TreeState readState = TreeState.createFrom(stored);
doTestState(readState);
}
private void doTestState(TreeState treeState) {
JTree tree2 = myStructure.createPane().getTree();
treeState.applyTo(tree2);
PlatformTestUtil.waitWhileBusy(tree2);
PlatformTestUtil.assertTreeEqual(tree2, myExpectedTree, true);
}
@Override
protected void setUp() throws Exception {
super.setUp();
myExpectedTree = "-Project\n" +
" +PsiDirectory: updateProjectView\n" +
" +External Libraries\n";
}
}