1
2
3
4 package de.powerstat.validation.containers.test;
5
6
7 import static org.junit.jupiter.api.Assertions.assertAll;
8 import static org.junit.jupiter.api.Assertions.assertEquals;
9 import static org.junit.jupiter.api.Assertions.assertFalse;
10 import static org.junit.jupiter.api.Assertions.assertNotEquals;
11 import static org.junit.jupiter.api.Assertions.assertTrue;
12
13 import org.junit.jupiter.api.Test;
14
15 import de.powerstat.validation.containers.NTuple9;
16 import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
17
18
19
20
21
22 @SuppressFBWarnings({"CE_CLASS_ENVY", "RV_NEGATING_RESULT_OF_COMPARETO", "SPP_USE_ZERO_WITH_COMPARATOR", "EC_NULL_ARG"})
23 final class NTuple9Tests
24 {
25
26
27
28 private static final String TEST_EQUALS = "testEquals";
29
30
31
32
33 private static final String TEST_COMPARE_TO = "testCompareTo";
34
35
36
37
38 private static final String TUPLE12_IS_EQUAL = "tuple12 is equal";
39
40
41
42
43 private static final String TUPLE13_IS_EQUAL = "tuple13 is equal";
44
45
46
47
48 private static final String TUPLE14_IS_EQUAL = "tuple14 is equal";
49
50
51
52
53 private static final String TUPLE15_IS_EQUAL = "tuple15 is equal";
54
55
56
57
58 private static final String TUPLE16_IS_EQUAL = "tuple16 is equal";
59
60
61
62
63 private static final String TUPLE17_IS_EQUAL = "tuple17 is equal";
64
65
66
67
68 private static final String TUPLE18_IS_EQUAL = "tuple18 is equal";
69
70
71
72
73 private static final String JAVA_S5785 = "java:S5785";
74
75
76
77
78
79 NTuple9Tests()
80 {
81 super();
82 }
83
84
85
86
87
88 @Test
89 void testOfInt()
90 {
91 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple = NTuple9.of(Integer.valueOf(1), Integer.valueOf(4711), Integer.valueOf(815), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
92 assertAll("testGetValue",
93 () -> assertEquals(1, tuple.t1Value().intValue(), "t1 not as expected"),
94 () -> assertEquals(4711, tuple.t2Value().intValue(), "t2 not as expected"),
95 () -> assertEquals(815, tuple.t3Value().intValue(), "t3 not as expected"),
96 () -> assertEquals(1, tuple.t4Value().intValue(), "t4 not as expected"),
97 () -> assertEquals(1, tuple.t5Value().intValue(), "t5 not as expected"),
98 () -> assertEquals(1, tuple.t6Value().intValue(), "t6 not as expected"),
99 () -> assertEquals(1, tuple.t7Value().intValue(), "t7 not as expected"),
100 () -> assertEquals(1, tuple.t8Value().intValue(), "t8 not as expected"),
101 () -> assertEquals(1, tuple.t9Value().intValue(), "t9 not as expected")
102 );
103 }
104
105
106
107
108
109 @Test
110 void testHashCode()
111 {
112 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple1 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(4711), Integer.valueOf(4711), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
113 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple2 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(4711), Integer.valueOf(4711), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
114 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple3 = NTuple9.of(Integer.valueOf(2), Integer.valueOf(815), Integer.valueOf(815), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
115 assertAll("testHashCode",
116 () -> assertEquals(tuple1.hashCode(), tuple2.hashCode(), "hashCodes are not equal"),
117 () -> assertNotEquals(tuple1.hashCode(), tuple3.hashCode(), "hashCodes are equal")
118 );
119 }
120
121
122
123
124
125 @Test
126 @SuppressWarnings(JAVA_S5785)
127 void testEquals()
128 {
129 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple1 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(4711), Integer.valueOf(4711), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
130 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple2 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(4711), Integer.valueOf(4711), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
131 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple3 = NTuple9.of(Integer.valueOf(2), Integer.valueOf(815), Integer.valueOf(815), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
132 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple4 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(4711), Integer.valueOf(4711), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
133 assertAll(NTuple9Tests.TEST_EQUALS,
134 () -> assertTrue(tuple1.equals(tuple1), "tuple11 is not equal"),
135 () -> assertTrue(tuple1.equals(tuple2), "tuple12 are not equal"),
136 () -> assertTrue(tuple2.equals(tuple1), "tuple21 are not equal"),
137 () -> assertTrue(tuple2.equals(tuple4), "tuple24 are not equal"),
138 () -> assertTrue(tuple1.equals(tuple4), "tuple14 are not equal"),
139 () -> assertFalse(tuple1.equals(tuple3), "tuple13 are equal"),
140 () -> assertFalse(tuple3.equals(tuple1), "tuple31 are equal"),
141 () -> assertFalse(tuple1.equals(null), "tuple10 is equal")
142 );
143 }
144
145
146
147
148
149 @Test
150 @SuppressWarnings(JAVA_S5785)
151 void testEquals2()
152 {
153 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple1 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
154 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple2 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(2), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
155 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple3 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(2), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
156 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple4 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(2), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
157 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple5 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(2), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
158 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple6 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(2), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
159 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple7 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(2), Integer.valueOf(1), Integer.valueOf(1));
160 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple8 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(2), Integer.valueOf(1));
161 assertAll(NTuple9Tests.TEST_EQUALS,
162 () -> assertFalse(tuple1.equals(tuple2), NTuple9Tests.TUPLE12_IS_EQUAL),
163 () -> assertFalse(tuple1.equals(tuple3), NTuple9Tests.TUPLE13_IS_EQUAL),
164 () -> assertFalse(tuple1.equals(tuple4), NTuple9Tests.TUPLE14_IS_EQUAL),
165 () -> assertFalse(tuple1.equals(tuple5), NTuple9Tests.TUPLE15_IS_EQUAL),
166 () -> assertFalse(tuple1.equals(tuple6), NTuple9Tests.TUPLE16_IS_EQUAL),
167 () -> assertFalse(tuple1.equals(tuple7), NTuple9Tests.TUPLE17_IS_EQUAL),
168 () -> assertFalse(tuple1.equals(tuple8), NTuple9Tests.TUPLE18_IS_EQUAL)
169 );
170 }
171
172
173
174
175
176 @Test
177 void testToString()
178 {
179 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple1 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(4711), Integer.valueOf(815), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
180 assertEquals("NTuple9[object1=1, object2=4711, object3=815, object4=1, object5=1, object6=1, object7=1, object8=1, object9=1]", tuple1.toString(), "toString not equal");
181 }
182
183
184
185
186
187 @Test
188 @SuppressWarnings(JAVA_S5785)
189 void testCompareTo()
190 {
191 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple1 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(4711), Integer.valueOf(4711), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
192 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple2 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(4711), Integer.valueOf(4711), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
193 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple3 = NTuple9.of(Integer.valueOf(2), Integer.valueOf(815), Integer.valueOf(815), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
194 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple4 = NTuple9.of(Integer.valueOf(3), Integer.valueOf(20221127), Integer.valueOf(20221127), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
195 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple5 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(4711), Integer.valueOf(4711), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
196 assertAll(NTuple9Tests.TEST_COMPARE_TO,
197 () -> assertTrue(tuple1.compareTo(tuple2) == -tuple2.compareTo(tuple1), "reflexive1"),
198 () -> assertTrue(tuple1.compareTo(tuple3) == -tuple3.compareTo(tuple1), "reflexive2"),
199 () -> assertTrue((tuple4.compareTo(tuple3) > 0) && (tuple3.compareTo(tuple1) > 0) && (tuple4.compareTo(tuple1) > 0), "transitive1"),
200 () -> assertTrue((tuple1.compareTo(tuple2) == 0) && (Math.abs(tuple1.compareTo(tuple5)) == Math.abs(tuple2.compareTo(tuple5))), "sgn1"),
201 () -> assertTrue((tuple1.compareTo(tuple2) == 0) && tuple1.equals(tuple2), "equals")
202 );
203 }
204
205
206
207
208
209 @Test
210 @SuppressWarnings(JAVA_S5785)
211 void testCompareTo2()
212 {
213 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple1 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
214 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple2 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(2), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
215 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple3 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(2), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
216 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple4 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(2), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
217 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple5 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(2), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
218 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple6 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(2), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1));
219 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple7 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(2), Integer.valueOf(1), Integer.valueOf(1));
220 final NTuple9<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer> tuple8 = NTuple9.of(Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(2), Integer.valueOf(1));
221 assertAll(NTuple9Tests.TEST_COMPARE_TO,
222 () -> assertTrue(tuple1.compareTo(tuple2) != 0, NTuple9Tests.TUPLE12_IS_EQUAL),
223 () -> assertTrue(tuple1.compareTo(tuple3) != 0, NTuple9Tests.TUPLE13_IS_EQUAL),
224 () -> assertTrue(tuple1.compareTo(tuple4) != 0, NTuple9Tests.TUPLE14_IS_EQUAL),
225 () -> assertTrue(tuple1.compareTo(tuple5) != 0, NTuple9Tests.TUPLE15_IS_EQUAL),
226 () -> assertTrue(tuple1.compareTo(tuple6) != 0, NTuple9Tests.TUPLE16_IS_EQUAL),
227 () -> assertTrue(tuple1.compareTo(tuple7) != 0, NTuple9Tests.TUPLE17_IS_EQUAL),
228 () -> assertTrue(tuple1.compareTo(tuple8) != 0, NTuple9Tests.TUPLE18_IS_EQUAL)
229 );
230 }
231
232 }