From cede72fbb2328061ed6b30f4fdf16ebec8a6ec47 Mon Sep 17 00:00:00 2001 From: Konstantin Bulenkov Date: Fri, 25 Aug 2017 20:45:22 +0300 Subject: [PATCH] add test for a case when start from non-leaf node --- .../util/treeView/TreeSmartSelectTest.java | 46 ++++++++++++++++++- 1 file changed, 45 insertions(+), 1 deletion(-) diff --git a/platform/platform-tests/testSrc/com/intellij/ide/util/treeView/TreeSmartSelectTest.java b/platform/platform-tests/testSrc/com/intellij/ide/util/treeView/TreeSmartSelectTest.java index 344fabb6788c..98ea2591810d 100644 --- a/platform/platform-tests/testSrc/com/intellij/ide/util/treeView/TreeSmartSelectTest.java +++ b/platform/platform-tests/testSrc/com/intellij/ide/util/treeView/TreeSmartSelectTest.java @@ -68,7 +68,15 @@ public class TreeSmartSelectTest extends AbstractTreeBuilderTest { " [c]\n"); myProvider.increaseSelection(myTree); - assertTree("-/\n" + + assertTree("-[/]\n" + + " -[com]\n" + + " -[intellij]\n" + + " [a]\n" + + " [b]\n" + + " [c]\n"); + + myProvider.increaseSelection(myTree); + assertTree("-[/]\n" + " -[com]\n" + " -[intellij]\n" + " [a]\n" + @@ -139,4 +147,40 @@ public class TreeSmartSelectTest extends AbstractTreeBuilderTest { " [c]\n"); } + + public void testIncDecFromNonLeaf() throws Exception { + doAndWaitForBuilder(() -> { + Node com = myRoot.addChild("com"); + Node intellij = com.addChild("intellij"); + intellij.addChild("a"); + intellij.addChild("b"); + com.addChild("x"); + com.addChild("y"); + myRoot.addChild("zzz"); + TreeUtil.expandAll(myTree); + getBuilder().select(intellij.myElement); + }); + + myProvider.increaseSelection(myTree); + assertTree("-/\n" + + " -com\n" + + " -[intellij]\n" + + " [a]\n" + + " [b]\n" + + " [x]\n" + + " [y]\n" + + " zzz\n"); + + myProvider.decreaseSelection(myTree); + myProvider.decreaseSelection(myTree); + assertTree("-/\n" + + " -com\n" + + " -[intellij]\n" + + " a\n" + + " b\n" + + " x\n" + + " y\n" + + " zzz\n"); + } + }