public async Task SliceTests() { var data = GetData(1024 * 1024 * 5); using (var slicer = new BlobSlicer(data, 1024 * 1024)) { var slices = new List<BlobSlice>(); while (!slicer.IsEof) { slices.Add(await slicer.ReadAsync()); } long offset = 0; Assert.Equal(5, slices.Count); foreach (var slice in slices) { Assert.Equal(1024 * 1024, slice.Length); Assert.Equal(offset, slice.Offset); offset += slice.Length; } Assert.Equal(slicer.Position, data.Length); } }
public async Task BigSlice() { var data = GetData((1024 * 1024 * 50) + 1019); using (var slicer = new BlobSlicer(data, 1024 * 1024 * 5)) { var slices = new List<BlobSlice>(); while (!slicer.IsEof) { slices.Add(await slicer.ReadAsync()); } Assert.Equal(slicer.Position, data.Length); Assert.Equal(11, slices.Count); Assert.Equal(1019, slices[10].Stream.Length); } }