1 package com
.intellij
.execution
.testframework
.sm
.runner
;
3 import org
.jetbrains
.plugins
.ruby
.support
.AssertionErrorCase
;
4 import org
.jetbrains
.plugins
.ruby
.support
.AssertionUtil
;
7 * @author Roman Chernyatchik
9 public class TestSuiteStackTest
extends BaseSMTRunnerTestCase
{
10 private TestSuiteStack myTestSuiteStack
;
13 protected void setUp() throws Exception
{
16 myTestSuiteStack
= new TestSuiteStack();
19 public void testPushSuite() {
20 myTestSuiteStack
.pushSuite(mySuite
);
21 assertEquals(1, myTestSuiteStack
.getStackSize());
22 assertEquals(mySuite
, myTestSuiteStack
.getCurrentSuite());
24 myTestSuiteStack
.pushSuite(mySuite
);
25 assertEquals(2, myTestSuiteStack
.getStackSize());
26 assertEquals(mySuite
, myTestSuiteStack
.getCurrentSuite());
28 final SMTestProxy newSuite
= createSuiteProxy();
29 myTestSuiteStack
.pushSuite(newSuite
);
30 assertEquals(3, myTestSuiteStack
.getStackSize());
31 assertEquals(newSuite
, myTestSuiteStack
.getCurrentSuite());
34 public void testGetStackSize() {
35 assertEquals(0, myTestSuiteStack
.getStackSize());
37 myTestSuiteStack
.pushSuite(mySuite
);
38 assertEquals(1, myTestSuiteStack
.getStackSize());
40 myTestSuiteStack
.popSuite(mySuite
.getName());
41 assertEquals(0, myTestSuiteStack
.getStackSize());
44 public void testGetCurrentSuite() {
45 assertNull(myTestSuiteStack
.getCurrentSuite());
47 myTestSuiteStack
.pushSuite(mySuite
);
48 assertEquals(mySuite
, myTestSuiteStack
.getCurrentSuite());
51 public void testPopSuite() {
52 final String suiteName
= mySuite
.getName();
54 AssertionUtil
.assertException(new AssertionErrorCase() {
55 public void tryClosure() {
56 myTestSuiteStack
.popSuite("some suite");
60 myTestSuiteStack
.pushSuite(mySuite
);
61 assertEquals(mySuite
, myTestSuiteStack
.popSuite(suiteName
));
62 assertEquals(0, myTestSuiteStack
.getStackSize());
65 public void testGetSuitePath() {
66 assertEmpty(myTestSuiteStack
.getSuitePath());
68 myTestSuiteStack
.pushSuite(createSuiteProxy("1"));
69 myTestSuiteStack
.pushSuite(createSuiteProxy("2"));
70 myTestSuiteStack
.pushSuite(createSuiteProxy("3"));
72 assertSameElements(myTestSuiteStack
.getSuitePath(), "1", "2", "3");
75 public void testGetSuitePathPresentation() {
76 assertEquals("empty", myTestSuiteStack
.getSuitePathPresentation());
78 myTestSuiteStack
.pushSuite(createSuiteProxy("1"));
79 myTestSuiteStack
.pushSuite(createSuiteProxy("2"));
80 myTestSuiteStack
.pushSuite(createSuiteProxy("3"));
82 assertEquals("[1]->[2]->[3]", myTestSuiteStack
.getSuitePathPresentation());
85 public void testClear() {
86 myTestSuiteStack
.pushSuite(createSuiteProxy("1"));
87 myTestSuiteStack
.pushSuite(createSuiteProxy("2"));
88 myTestSuiteStack
.pushSuite(createSuiteProxy("3"));
89 myTestSuiteStack
.clear();
91 assertEquals(0, myTestSuiteStack
.getStackSize());
94 public void testIsEmpty() {
95 assertTrue(myTestSuiteStack
.isEmpty());
97 myTestSuiteStack
.pushSuite(createSuiteProxy("1"));
98 assertFalse(myTestSuiteStack
.isEmpty());
100 myTestSuiteStack
.popSuite("1");
101 assertTrue(myTestSuiteStack
.isEmpty());
103 myTestSuiteStack
.pushSuite(createSuiteProxy("1"));
104 myTestSuiteStack
.pushSuite(createSuiteProxy("2"));
105 myTestSuiteStack
.clear();
106 assertTrue(myTestSuiteStack
.isEmpty());