Czy istnieje zwięzły, wbudowany sposób wykonywania asercji równości na dwóch tablicach o podobnym typie w JUnit? Domyślnie (przynajmniej w JUnit 4) wydaje się, że wykonuje porównanie instancji na samym obiekcie tablicy.
EG, nie działa:
int[] expectedResult = new int[] { 116800, 116800 };
int[] result = new GraphixMask().sortedAreas(rectangles);
assertEquals(expectedResult, result);
Oczywiście mogę to zrobić ręcznie:
assertEquals(expectedResult.length, result.length);
for (int i = 0; i < expectedResult.length; i++)
assertEquals("mismatch at " + i, expectedResult[i], result[i]);
..ale czy jest lepszy sposób?
java.lang.AssertionError: array lengths differed, expected.length=6 actual.length=7
. Jak większość komunikatów o błędach JUnit, nie jest to tak pomocne ... Radzę użyć jakiegoś frameworka asercji