Skip to content

Commit 034fa63

Browse files
committed
Test builder and deprecated constructor
1 parent 6c50a6e commit 034fa63

File tree

1 file changed

+44
-18
lines changed

1 file changed

+44
-18
lines changed

src/test/java/org/apache/commons/lang3/builder/ReflectionDiffBuilderTest.java

Lines changed: 44 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,26 @@ private static class TypeTestClass implements Diffable<TypeTestClass> {
6363

6464
@Override
6565
public DiffResult<TypeTestClass> diff(final TypeTestClass obj) {
66+
// @formatter:off
67+
return ReflectionDiffBuilder.<TypeTestClass>builder()
68+
.setDiffBuilder(diffBuilder(obj))
69+
.setExcludeFieldNames("excludedField")
70+
.build()
71+
.build();
72+
// @formatter:on
73+
}
74+
75+
DiffBuilder<TypeTestClass> diffBuilder(final TypeTestClass obj) {
76+
// @formatter:off
77+
return DiffBuilder.<TypeTestClass>builder()
78+
.setLeft(this)
79+
.setRight(obj)
80+
.setStyle(style)
81+
.build();
82+
// @formatter:on
83+
}
84+
85+
public DiffResult<TypeTestClass> diffDeprecated(final TypeTestClass obj) {
6686
return new ReflectionDiffBuilder<>(this, obj, style).setExcludeFieldNames("excludedField").build();
6787
}
6888

@@ -84,8 +104,11 @@ public void testArrayDifference() {
84104
final TypeTestClass firstObject = new TypeTestClass();
85105
firstObject.charArrayField = new char[] { 'c' };
86106
final TypeTestClass secondObject = new TypeTestClass();
87-
88-
final DiffResult<TypeTestClass> list = firstObject.diff(secondObject);
107+
// Normal builder
108+
DiffResult<TypeTestClass> list = firstObject.diff(secondObject);
109+
assertEquals(1, list.getNumberOfDiffs());
110+
// Deprecated constructor
111+
list = firstObject.diffDeprecated(secondObject);
89112
assertEquals(1, list.getNumberOfDiffs());
90113
}
91114

@@ -182,19 +205,17 @@ public void testGetExcludeFieldNamesWithNullValuesInExcludedFieldNamesCtor() {
182205
public void testNoDifferences() {
183206
final TypeTestClass firstObject = new TypeTestClass();
184207
final TypeTestClass secondObject = new TypeTestClass();
185-
186-
final DiffResult<TypeTestClass> list = firstObject.diff(secondObject);
187-
assertEquals(0, list.getNumberOfDiffs());
208+
assertEquals(0, firstObject.diff(secondObject).getNumberOfDiffs());
209+
assertEquals(0, firstObject.diffDeprecated(secondObject).getNumberOfDiffs());
188210
}
189211

190212
@Test
191213
public void testNoDifferencesDiffExcludeAnnotatedField() {
192214
final TypeTestClass firstObject = new TypeTestClass();
193215
firstObject.annotatedField = "b";
194216
final TypeTestClass secondObject = new TypeTestClass();
195-
196-
final DiffResult<TypeTestClass> list = firstObject.diff(secondObject);
197-
assertEquals(0, list.getNumberOfDiffs());
217+
assertEquals(0, firstObject.diff(secondObject).getNumberOfDiffs());
218+
assertEquals(0, firstObject.diffDeprecated(secondObject).getNumberOfDiffs());
198219
}
199220

200221
@Test
@@ -203,8 +224,9 @@ public void testNoDifferencesDiffExcludedFieldAndExcludeAnnotatedField() {
203224
firstObject.excludedField = "b";
204225
firstObject.annotatedField = "b";
205226
final TypeTestClass secondObject = new TypeTestClass();
206-
207-
final DiffResult<TypeTestClass> list = firstObject.diff(secondObject);
227+
DiffResult<TypeTestClass> list = firstObject.diff(secondObject);
228+
assertEquals(0, list.getNumberOfDiffs());
229+
list = firstObject.diffDeprecated(secondObject);
208230
assertEquals(0, list.getNumberOfDiffs());
209231
}
210232

@@ -213,17 +235,19 @@ public void testNoDifferencesExcludedField() {
213235
final TypeTestClass firstObject = new TypeTestClass();
214236
firstObject.excludedField = "b";
215237
final TypeTestClass secondObject = new TypeTestClass();
216-
217-
final DiffResult<TypeTestClass> list = firstObject.diff(secondObject);
238+
DiffResult<TypeTestClass> list = firstObject.diff(secondObject);
239+
assertEquals(0, list.getNumberOfDiffs());
240+
list = firstObject.diffDeprecated(secondObject);
218241
assertEquals(0, list.getNumberOfDiffs());
219242
}
220243

221244
@Test
222245
public void testNoDifferencesInheritance() {
223246
final TypeTestChildClass firstObject = new TypeTestChildClass();
224247
final TypeTestChildClass secondObject = new TypeTestChildClass();
225-
226-
final DiffResult<TypeTestClass> list = firstObject.diff(secondObject);
248+
DiffResult<TypeTestClass> list = firstObject.diff(secondObject);
249+
assertEquals(0, list.getNumberOfDiffs());
250+
list = firstObject.diffDeprecated(secondObject);
227251
assertEquals(0, list.getNumberOfDiffs());
228252
}
229253

@@ -232,8 +256,9 @@ public void testPrimitiveDifference() {
232256
final TypeTestClass firstObject = new TypeTestClass();
233257
firstObject.charField = 'c';
234258
final TypeTestClass secondObject = new TypeTestClass();
235-
236-
final DiffResult<TypeTestClass> list = firstObject.diff(secondObject);
259+
DiffResult<TypeTestClass> list = firstObject.diff(secondObject);
260+
assertEquals(1, list.getNumberOfDiffs());
261+
list = firstObject.diffDeprecated(secondObject);
237262
assertEquals(1, list.getNumberOfDiffs());
238263
}
239264

@@ -243,8 +268,9 @@ public void testTransientFieldDifference() {
243268
firstObject.transientField = "a";
244269
final TypeTestClass secondObject = new TypeTestClass();
245270
firstObject.transientField = "b";
246-
247-
final DiffResult<TypeTestClass> list = firstObject.diff(secondObject);
271+
DiffResult<TypeTestClass> list = firstObject.diff(secondObject);
272+
assertEquals(0, list.getNumberOfDiffs());
273+
list = firstObject.diffDeprecated(secondObject);
248274
assertEquals(0, list.getNumberOfDiffs());
249275
}
250276

0 commit comments

Comments
 (0)