private void setDateAndVerifyProlepticUpdate(long longDay, String expectedDateString,
      boolean originalUseProleptic, boolean newUseProleptic) throws Exception {

    DateColumnVector dateColumnVector =
        new DateColumnVector().setUsingProlepticCalendar(originalUseProleptic);
    dateColumnVector.vector[0] = longDay;

    dateColumnVector.changeCalendar(newUseProleptic, true);

    Assert.assertEquals("original = " + originalUseProleptic +
                        " new = " + newUseProleptic,
                        expectedDateString, dateColumnVector.formatDate(0));
  }
Test case for DateColumnVector's changeCalendar
epoch days, hybrid representation, proleptic representation
  16768: hybrid: 2015-11-29 proleptic: 2015-11-29
-141418: hybrid: 1582-10-24 proleptic: 1582-10-24
-141427: hybrid: 1582-10-15 proleptic: 1582-10-15
-141428: hybrid: 1582-10-04 proleptic: 1582-10-14
-141430: hybrid: 1582-10-02 proleptic: 1582-10-12
-141437: hybrid: 1582-09-25 proleptic: 1582-10-05
-141438: hybrid: 1582-09-24 proleptic: 1582-10-04
-499952: hybrid: 0601-03-04 proleptic: 0601-03-07
-499955: hybrid: 0601-03-01 proleptic: 0601-03-04
@throws Exception
storage-api/src/test/org/apache/hadoop/hive/ql/exec/vector/TestDateColumnVector.java