1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 package net.grinder.console.editor;
23
24 import junit.framework.TestCase;
25
26 import net.grinder.testutility.RandomStubFactory;
27
28
29
30
31
32
33
34 public class TestAbstractTextSource extends TestCase {
35
36 public void testAbstractTextSource() throws Exception {
37 final AbstractTextSource textSource = new StringTextSource();
38
39 assertTrue(textSource.isDirty());
40
41 textSource.setChanged();
42
43 assertTrue(textSource.isDirty());
44
45 final RandomStubFactory<TextSource.Listener> listener1StubFactory =
46 RandomStubFactory.create(TextSource.Listener.class);
47
48 final RandomStubFactory<TextSource.Listener> listener2StubFactory =
49 RandomStubFactory.create(TextSource.Listener.class);
50
51 textSource.addListener(listener1StubFactory.getStub());
52 textSource.addListener(listener2StubFactory.getStub());
53
54 textSource.setChanged();
55
56 assertTrue(textSource.isDirty());
57 listener1StubFactory.assertSuccess("textSourceChanged", Boolean.FALSE);
58 listener1StubFactory.assertNoMoreCalls();
59 listener2StubFactory.assertSuccess("textSourceChanged", Boolean.FALSE);
60 listener2StubFactory.assertNoMoreCalls();
61
62 textSource.setClean();
63
64 assertTrue(!textSource.isDirty());
65 listener1StubFactory.assertSuccess("textSourceChanged", Boolean.TRUE);
66 listener1StubFactory.assertNoMoreCalls();
67 listener2StubFactory.assertSuccess("textSourceChanged", Boolean.TRUE);
68 listener2StubFactory.assertNoMoreCalls();
69
70 textSource.setClean();
71
72 assertTrue(!textSource.isDirty());
73 listener1StubFactory.assertSuccess("textSourceChanged", Boolean.FALSE);
74 listener1StubFactory.assertNoMoreCalls();
75 listener2StubFactory.assertSuccess("textSourceChanged", Boolean.FALSE);
76 listener2StubFactory.assertNoMoreCalls();
77
78 textSource.setChanged();
79
80 assertTrue(textSource.isDirty());
81 listener1StubFactory.assertSuccess("textSourceChanged", Boolean.TRUE);
82 listener1StubFactory.assertNoMoreCalls();
83 listener2StubFactory.assertSuccess("textSourceChanged", Boolean.TRUE);
84 listener2StubFactory.assertNoMoreCalls();
85 }
86 }