@Test public void testUploadWithoutExistingChunks() { long length = 2 * chunkSize; List<Chunk> existingChunks = new ArrayList<>(); List<Chunk> expectedMissingChunks = new ArrayList<>(); expectedMissingChunks.add(new Chunk(0, 1023)); expectedMissingChunks.add(new Chunk(1024, 2047)); expectedMissingChunks.add(new Chunk(2048, 2048)); assertTrue(test(existingChunks, expectedMissingChunks, chunkSize, length)); }
@Test public void testUploadChunksMissingChunks() { long length = 2 * chunkSize; List<Chunk> existingChunks = new ArrayList<>(); existingChunks.add(new Chunk(0, 1023)); existingChunks.add(new Chunk(1028, 1100)); List<Chunk> expectedMissingChunks = new ArrayList<>(); expectedMissingChunks.add(new Chunk(1024, 1027)); expectedMissingChunks.add(new Chunk(1101, 2048)); assertTrue(test(existingChunks, expectedMissingChunks, chunkSize, length)); }
@Test public void testUploadWithoutExistingChunksBig() { long length = 4 * chunkSize; List<Chunk> existingChunks = new ArrayList<>(); List<Chunk> expectedMissingChunks = new ArrayList<>(); expectedMissingChunks.add(new Chunk(0, 1023)); expectedMissingChunks.add(new Chunk(1024, 2047)); expectedMissingChunks.add(new Chunk(2048, 3071)); expectedMissingChunks.add(new Chunk(3072, 4095)); expectedMissingChunks.add(new Chunk(4096, 4096)); assertTrue(test(existingChunks, expectedMissingChunks, chunkSize, length)); }
@Test public void testUploadChunksMissingChunks2() { long length = 2 * chunkSize; List<Chunk> existingChunks = new ArrayList<>(); existingChunks.add(new Chunk(50, 1023)); existingChunks.add(new Chunk(1028, 1100)); List<Chunk> expectedMissingChunks = new ArrayList<>(); expectedMissingChunks.add(new Chunk(0, 49)); expectedMissingChunks.add(new Chunk(1024, 1027)); expectedMissingChunks.add(new Chunk(1101, 2048)); assertTrue(test(existingChunks, expectedMissingChunks, chunkSize, length)); }
@Test public void testUploadWithoutExistingChunksSmallChunks() { long chunkSize = 512; long length = 4 * chunkSize; List<Chunk> existingChunks = new ArrayList<>(); List<Chunk> expectedMissingChunks = new ArrayList<>(); expectedMissingChunks.add(new Chunk(0, 511)); expectedMissingChunks.add(new Chunk(512, 1023)); expectedMissingChunks.add(new Chunk(1024, 1535)); expectedMissingChunks.add(new Chunk(1536, 2047)); expectedMissingChunks.add(new Chunk(2048, 2048)); assertTrue(test(existingChunks, expectedMissingChunks, chunkSize, length)); }
@Test public void testChunksSmallSizeMissingChunks() { long chunkSize = 512; long length = 4 * chunkSize; List<Chunk> existingChunks = new ArrayList<>(); existingChunks.add(new Chunk(50, 89)); existingChunks.add(new Chunk(551, 580)); List<Chunk> expectedMissingChunks = new ArrayList<>(); expectedMissingChunks.add(new Chunk(0, 49)); expectedMissingChunks.add(new Chunk(90, 550)); expectedMissingChunks.add(new Chunk(581, 1092)); expectedMissingChunks.add(new Chunk(1093, 1604)); expectedMissingChunks.add(new Chunk(1605, 2048)); assertTrue(test(existingChunks, expectedMissingChunks, chunkSize, length)); }