public static void unzip(Path archive, Path destination) throws IOException {
    unzip(archive, destination, false);
  }
@Test
  public void testUnzip_reproducibleTimestampsEnabled() throws URISyntaxException, IOException {
    // The zipfile has only level1/level2/level3/file.txt packaged
    Path archive =
        Paths.get(
            Resources.getResource("plugins-common/test-archives/zip-only-file-packaged.zip")
                .toURI());

    Path destination = tempFolder.getRoot().toPath();

    ZipUtil.unzip(archive, destination, true);

    assertThat(Files.getLastModifiedTime(destination.resolve("level-1")))
        .isEqualTo(FileTime.fromMillis(1000L));
    assertThat(Files.getLastModifiedTime(destination.resolve("level-1/level-2")))
        .isEqualTo(FileTime.fromMillis(1000L));
    assertThat(Files.getLastModifiedTime(destination.resolve("level-1/level-2/level-3")))
        .isEqualTo(FileTime.fromMillis(1000L));
    assertThat(Files.getLastModifiedTime(destination.resolve("level-1/level-2/level-3/file.txt")))
        .isEqualTo(FileTime.from(Instant.parse("2021-01-29T21:10:02Z")));
  }