1 package com
.intellij
.execution
.testframework
.sm
.runner
;
3 import com
.intellij
.testFramework
.exceptionCases
.AssertionErrorCase
;
6 * @author Roman Chernyatchik
8 public class TestSuiteStackTest
extends BaseSMTRunnerTestCase
{
9 private TestSuiteStack myTestSuiteStack
;
12 protected void setUp() throws Exception
{
15 myTestSuiteStack
= new TestSuiteStack();
18 public void testPushSuite() {
19 myTestSuiteStack
.pushSuite(mySuite
);
20 assertEquals(1, myTestSuiteStack
.getStackSize());
21 assertEquals(mySuite
, myTestSuiteStack
.getCurrentSuite());
23 myTestSuiteStack
.pushSuite(mySuite
);
24 assertEquals(2, myTestSuiteStack
.getStackSize());
25 assertEquals(mySuite
, myTestSuiteStack
.getCurrentSuite());
27 final SMTestProxy newSuite
= createSuiteProxy();
28 myTestSuiteStack
.pushSuite(newSuite
);
29 assertEquals(3, myTestSuiteStack
.getStackSize());
30 assertEquals(newSuite
, myTestSuiteStack
.getCurrentSuite());
33 public void testGetStackSize() {
34 assertEquals(0, myTestSuiteStack
.getStackSize());
36 myTestSuiteStack
.pushSuite(mySuite
);
37 assertEquals(1, myTestSuiteStack
.getStackSize());
39 myTestSuiteStack
.popSuite(mySuite
.getName());
40 assertEquals(0, myTestSuiteStack
.getStackSize());
43 public void testGetCurrentSuite() {
44 assertNull(myTestSuiteStack
.getCurrentSuite());
46 myTestSuiteStack
.pushSuite(mySuite
);
47 assertEquals(mySuite
, myTestSuiteStack
.getCurrentSuite());
50 public void testPopSuite() throws Throwable
{
51 final String suiteName
= mySuite
.getName();
53 assertException(new AssertionErrorCase() {
54 public void tryClosure() {
55 myTestSuiteStack
.popSuite("some suite");
59 myTestSuiteStack
.pushSuite(mySuite
);
60 assertEquals(mySuite
, myTestSuiteStack
.popSuite(suiteName
));
61 assertEquals(0, myTestSuiteStack
.getStackSize());
64 public void testGetSuitePath() {
65 assertEmpty(myTestSuiteStack
.getSuitePath());
67 myTestSuiteStack
.pushSuite(createSuiteProxy("1"));
68 myTestSuiteStack
.pushSuite(createSuiteProxy("2"));
69 myTestSuiteStack
.pushSuite(createSuiteProxy("3"));
71 assertSameElements(myTestSuiteStack
.getSuitePath(), "1", "2", "3");
74 public void testGetSuitePathPresentation() {
75 assertEquals("empty", myTestSuiteStack
.getSuitePathPresentation());
77 myTestSuiteStack
.pushSuite(createSuiteProxy("1"));
78 myTestSuiteStack
.pushSuite(createSuiteProxy("2"));
79 myTestSuiteStack
.pushSuite(createSuiteProxy("3"));
81 assertEquals("[1]->[2]->[3]", myTestSuiteStack
.getSuitePathPresentation());
84 public void testClear() {
85 myTestSuiteStack
.pushSuite(createSuiteProxy("1"));
86 myTestSuiteStack
.pushSuite(createSuiteProxy("2"));
87 myTestSuiteStack
.pushSuite(createSuiteProxy("3"));
88 myTestSuiteStack
.clear();
90 assertEquals(0, myTestSuiteStack
.getStackSize());
93 public void testIsEmpty() {
94 assertTrue(myTestSuiteStack
.isEmpty());
96 myTestSuiteStack
.pushSuite(createSuiteProxy("1"));
97 assertFalse(myTestSuiteStack
.isEmpty());
99 myTestSuiteStack
.popSuite("1");
100 assertTrue(myTestSuiteStack
.isEmpty());
102 myTestSuiteStack
.pushSuite(createSuiteProxy("1"));
103 myTestSuiteStack
.pushSuite(createSuiteProxy("2"));
104 myTestSuiteStack
.clear();
105 assertTrue(myTestSuiteStack
.isEmpty());