1 package net.sf.msplice.model;
2
3 import net.sf.msplice.model.condition.AbstractCondition;
4 import net.sf.msplice.visitor.IVisitor;
5
6 import org.jmock.Mock;
7 import org.jmock.MockObjectTestCase;
8
9 public class DefaultConditionHolderTest extends MockObjectTestCase {
10
11 private DefaultConditionHolder conditionHolder = null;
12
13 private AbstractCondition fallbackCondition = null;
14
15 private AbstractCondition testCondition = null;
16
17 private AbstractCondition nullCondition = null;
18
19 @Override
20 protected void setUp() throws Exception {
21 super.setUp();
22
23 conditionHolder = new DefaultConditionHolder();
24
25 fallbackCondition = DefaultConditionHolder.FALLBACK_CONDITION;
26 testCondition = new TestCondition();
27 nullCondition = null;
28 }
29
30 public void testInitialCondition() throws Exception {
31
32 assertEquals("Check the initial condition",
33 fallbackCondition, conditionHolder.getDefaultCondition());
34
35 }
36
37 public void testSetDefaultCondition() {
38
39 conditionHolder.setDefaultCondition(testCondition);
40 AbstractCondition resultCondition = conditionHolder.getDefaultCondition();
41
42 assertEquals("Chect the condition", testCondition, resultCondition);
43 }
44
45 public void testSetNullCondition() throws Exception {
46
47 conditionHolder.setDefaultCondition(nullCondition);
48 AbstractCondition resultCondition = conditionHolder.getDefaultCondition();
49
50 assertEquals("Chect the condition", fallbackCondition, resultCondition);
51 }
52
53
54 public void testVisitor() throws Exception {
55
56
57 Mock mockVisitor = mock(IVisitor.class);
58
59
60 mockVisitor.expects(once()).method("visit").with(eq(conditionHolder));
61
62 conditionHolder.accept((IVisitor) mockVisitor.proxy());
63 }
64
65
66
67
68
69
70 public class TestCondition extends AbstractCondition {
71 }
72
73 }