1 package net.sf.msplice.model;
2
3 import org.jmock.Mock;
4 import org.jmock.MockObjectTestCase;
5
6 import junit.framework.TestCase;
7 import net.sf.msplice.model.value.AbstractValue;
8 import net.sf.msplice.visitor.IVisitor;
9
10 public class DefaultValueHolderTest extends MockObjectTestCase {
11
12 private DefaultValueHolder valueHolder = null;
13
14 private AbstractValue fallbackValue = null;
15
16 private AbstractValue testValue = null;
17
18 private AbstractValue nullValue = null;
19
20 @Override
21 protected void setUp() throws Exception {
22 super.setUp();
23
24 valueHolder = new DefaultValueHolder();
25
26 fallbackValue = DefaultValueHolder.FALLBACK_VALUE;
27 testValue = new TestValue();
28 nullValue = null;
29 }
30
31 public void testInitialValue() throws Exception {
32
33 assertEquals("Check the initial Value", fallbackValue, valueHolder
34 .getDefaultValue());
35
36 }
37
38 public void testSetDefaultValue() {
39
40 valueHolder.setDefaultValue(testValue);
41 AbstractValue resultValue = valueHolder.getDefaultValue();
42
43 assertEquals("Chect the Value", testValue, resultValue);
44 }
45
46 public void testSetNullValue() throws Exception {
47
48 valueHolder.setDefaultValue(nullValue);
49 AbstractValue resultValue = valueHolder.getDefaultValue();
50
51 assertEquals("Chect the Value", fallbackValue, resultValue);
52 }
53
54
55 public void testVisitor() throws Exception {
56
57
58 Mock mockVisitor = mock(IVisitor.class);
59
60
61 mockVisitor.expects(once()).method("visit").with(eq(valueHolder));
62
63 valueHolder.accept((IVisitor) mockVisitor.proxy());
64 }
65
66
67
68
69
70 public class TestValue extends AbstractValue {
71 }
72
73 }