new BaseSlicingStrategy(new BasePayloadSlicer()));
assertThat(strat.execute("vault", new BlobBuilderImpl().name("test").payload(buildPayload(100 * MiB)).build()))
.isEqualTo("archive-id");
RecordedRequest initiate = server.takeRequest();
assertThat(initiate.getRequestLine()).isEqualTo("POST /-/vaults/vault/multipart-uploads HTTP/1.1");
assertThat(initiate.getHeader(ARCHIVE_DESCRIPTION)).isEqualTo("test");
assertThat(Long.parseLong(initiate.getHeader(PART_SIZE))).isEqualTo(8 * MiB);
RecordedRequest p1 = server.takeRequest();
assertThat(p1.getRequestLine())
.isEqualTo("PUT /-/vaults/vault/multipart-uploads/upload-id HTTP/1.1");
assertThat(Long.parseLong(p1.getHeader(HttpHeaders.CONTENT_LENGTH))).isEqualTo(8388608);
assertThat(HashCode.fromString(p1.getHeader(TREE_HASH))).isEqualTo(hash8);
for (int i = 0; i < 11; i++) {
server.takeRequest();
}
RecordedRequest p13 = server.takeRequest();
assertThat(p13.getRequestLine())
.isEqualTo("PUT /-/vaults/vault/multipart-uploads/upload-id HTTP/1.1");
assertThat(HashCode.fromString(p13.getHeader(TREE_HASH))).isEqualTo(hash4);
assertThat(Long.parseLong(p13.getHeader(HttpHeaders.CONTENT_LENGTH))).isEqualTo(4194304);
RecordedRequest complete = server.takeRequest();
assertThat(complete.getRequestLine()).isEqualTo("POST /-/vaults/vault/multipart-uploads/upload-id HTTP/1.1");
assertThat(HashCode.fromString(complete.getHeader(TREE_HASH))).isEqualTo(hcomp);
assertThat(Long.parseLong(complete.getHeader(ARCHIVE_SIZE))).isEqualTo(100 * MiB);
}