public async Task <ArraySegment <byte> > SerializeCompressEncryptAsync <TIn>(TIn input) { var memoryStream = new MemoryStream(); await _serializationProvider .SerializeAsync(memoryStream, input) .ConfigureAwait(false); memoryStream.Seek(0, SeekOrigin.Begin); memoryStream = await _compressionProvider .CompressAsync(memoryStream) .ConfigureAwait(false); memoryStream.Seek(0, SeekOrigin.Begin); memoryStream = await _encryptionProvider .EncryptAsync(memoryStream) .ConfigureAwait(false); memoryStream.Seek(0, SeekOrigin.Begin); if (memoryStream.TryGetBuffer(out var buffer)) { return(buffer); } else { return(memoryStream.ToArray()); } }
public async Task CompressAsync() { var compressedData = (await _provider.CompressAsync(_data)).ToArray(); Assert.NotNull(compressedData); Assert.NotEqual(compressedData.Length, _data.Length); Assert.True(compressedData.Length < _data.Length); }
public async Task Gzip_Compress_Async() { var compressed = await _gzipProvider.CompressAsync(_compressableData); Assert.NotNull(compressed); Assert.NotEqual(compressed.Length, _compressableData.Length); Assert.True(compressed.Length < _compressableData.Length); }
public async Task Compress5KBytesAsync() { await CompressionProvider.CompressAsync(Payload1); }