1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 package name.angoca.db2sa.core.syntax.graph;
30
31 import org.junit.Assert;
32 import org.junit.Test;
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55 public final class EndingTokenTest {
56
57
58
59 public EndingTokenTest() {
60
61 }
62
63
64
65
66 @Test
67 public final void testDifferentStartingNodeHashCode() {
68 final EndingToken actual = new EndingToken();
69 final StartingToken notExpected = new StartingToken();
70
71 Assert.assertFalse(
72 "EndingNode has a hashcode different to StartingNode",
73 notExpected.hashCode() == actual.hashCode());
74 }
75
76
77
78
79 @Test
80 public final void testDifferentZeroHashCode() {
81 final EndingToken actual = new EndingToken();
82
83 Assert.assertTrue("HashCode different to 1",
84 1 != actual.hashCode());
85 Assert.assertTrue("HashCode different to 0",
86 0 != actual.hashCode());
87 Assert.assertTrue("HashCode different to -1",
88 -1 != actual.hashCode());
89 }
90
91
92
93
94 @Test
95 public final void testEqualsTokenNotReserved() {
96 final String token = "EndingToken";
97
98 final EndingToken actual = new EndingToken();
99 final GraphToken expected = new GraphToken(token, false);
100
101 Assert.assertFalse(
102 "Equals between EndingToken and a non reserved GraphToken",
103 actual.equals(expected));
104 }
105
106
107
108
109 @Test
110 public final void testEqualsTokenReserved() {
111 final String token = "EndingToken";
112
113 final EndingToken actual = new EndingToken();
114 final GraphToken expected = new GraphToken(token, true);
115
116 Assert.assertFalse(
117 "Equals between EndingToken and a reserved GraphToken",
118 actual.equals(expected));
119 }
120
121
122
123
124 @Test
125 public final void testNullEqualsObject() {
126 final EndingToken actual = new EndingToken();
127
128 final EndingToken nullObject = null;
129
130 final boolean condition = actual.equals(nullObject);
131
132 Assert.assertFalse("Equals in EndingNode with null", condition);
133 }
134
135
136
137
138 @Test
139 public final void testOtherTypeEqualsObject() {
140 final EndingToken actual = new EndingToken();
141 final StartingToken other = new StartingToken();
142
143 Assert.assertFalse("Equals between EndingToken and StartingNode",
144 actual.equals(other));
145 }
146
147
148
149
150 @Test
151 public final void testSameEqualsObject() {
152 final EndingToken actual = new EndingToken();
153 final EndingToken expected = new EndingToken();
154
155 Assert.assertTrue("Two EndingNode are equals",
156 actual.equals(expected));
157 }
158
159
160
161
162 @Test
163 public final void testSameHashCode() {
164 final EndingToken actual = new EndingToken();
165 final EndingToken expected = new EndingToken();
166
167 Assert.assertEquals(
168 "Two endingNode have the prodcue the same hashcode.",
169 expected.hashCode(), actual.hashCode());
170 }
171
172
173
174
175 @Test
176 public final void testToString() {
177 final EndingToken actual = new EndingToken();
178 final String expected = "{END NODE}";
179
180 Assert.assertEquals("Description of an endingnode", expected,
181 actual.toString());
182 }
183 }