@Test
public void testCompareTo() {

    // dane testowe
    DateHolder[] array = {
        new DateHolder(d("07-07-2012")),
        new DateHolder(null),
        new DateHolder(d("01-01-2012")),
        new DateHolder(d("04-04-2012")),
        new DateHolder(d("03-03-2012"))
    };
    // oczekiwany wynik sortowania
    Date[] expectedResult = {
        null,
        d("01-01-2012"),
        d("03-03-2012"),
        d("04-04-2012"),
        d("07-07-2012")
    };
    // wykonanie sortowania
    Arrays.sort(array);
    // weryfikacja
    for (int i = 0; i < array.length; i++) {
        Date value = array[i].getValue();
        Date expected = expectedResult[i];
        assertEquals(expected, value);
    }
}