public void ShouldGenerateWhenOneChunk() { // Arrange var file = new byte[16 + 5] { /* compressedSize */ 5, 0, 0, 0, /* source.offset */ 0, 0, 0, 0, 0, 0, 0, 0, /* source.size */ 10, 0, 0, 0, 1, 2, 3, 4, 5, }; var reader = new InmemoryReader(file); var generator = new DecompressionInfoGenerator(reader); // Act var chunks = new List <ChunkDecompressionInfo>(); while (generator.TryDequeue(out var info)) { chunks.Add(info); } // Assert Assert.Collection(chunks, info => { Assert.Equal(16L, info.source.offset); Assert.Equal(5, info.source.size); Assert.Equal(0L, info.target.offset); Assert.Equal(10, info.target.size); }); }
public void ShouldNotGenerateWhenEmpty() { // Arrange var file = new byte[0]; var reader = new InmemoryReader(file); var generator = new DecompressionInfoGenerator(reader); // Act var chunks = new List <ChunkDecompressionInfo>(); while (generator.TryDequeue(out var info)) { chunks.Add(info); } // Assert Assert.Empty(chunks); }