@Test
  public void testMajorCompation() throws IOException {
    long[] minTimestamps = new long[] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
    long[] maxTimestamps = new long[] { 44, 60, 61, 96, 100, 104, 105, 106, 113, 145, 157 };
    long[] sizes = new long[] { 0, 50, 51, 40, 41, 42, 33, 30, 31, 2, 1 };
    Map<Long, String> expected = new HashMap<>();
    expected.put(Long.MIN_VALUE, COLD_WINDOW_SP);
    expected.put(24L, COLD_WINDOW_SP);
    expected.put(48L, COLD_WINDOW_SP);
    expected.put(72L, COLD_WINDOW_SP);
    expected.put(96L, COLD_WINDOW_SP);
    expected.put(120L, COLD_WINDOW_SP);
    expected.put(144L, COLD_WINDOW_SP);
    expected.put(150L, WARM_WINDOW_SP);
    expected.put(156L, HOT_WINDOW_SP);
    compactEquals(161, sfCreate(minTimestamps, maxTimestamps, sizes),
      new long[] { 0, 50, 51, 40, 41, 42, 33, 30, 31, 2, 1 },
      new long[] { Long.MIN_VALUE, 24, 48, 72, 96, 120, 144, 150, 156 }, true, true);
    compactEqualsStoragePolicy(161, sfCreate(minTimestamps, maxTimestamps, sizes), expected, true,
      true);
  }
Test for Major compaction. It will compact all files and create multi output files with
different window storage policy.
@throws IOException with error
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestDateTieredCompactionPolicyHeterogeneousStorage.java