public virtual void TestZlibCompressorDecompressor()
 {
     try
     {
         int    Size    = 44 * 1024;
         byte[] rawData = Generate(Size);
         CompressDecompressTester.Of(rawData).WithCompressDecompressPair(new ZlibCompressor
                                                                             (), new ZlibDecompressor()).WithTestCases(ImmutableSet.Of(CompressDecompressTester.CompressionTestStrategy
                                                                                                                                       .CompressDecompressSingleBlock, CompressDecompressTester.CompressionTestStrategy
                                                                                                                                       .CompressDecompressBlock, CompressDecompressTester.CompressionTestStrategy.CompressDecompressErrors
                                                                                                                                       , CompressDecompressTester.CompressionTestStrategy.CompressDecompressWithEmptyStream
                                                                                                                                       )).Test();
     }
     catch (Exception ex)
     {
         NUnit.Framework.Assert.Fail("testCompressorDecompressor error !!!" + ex);
     }
 }
        public virtual void TestCompressorDecompressorWithExeedBufferLimit()
        {
            int ByteSize = 100 * 1024;

            byte[] rawData = Generate(ByteSize);
            try
            {
                CompressDecompressTester.Of(rawData).WithCompressDecompressPair(new ZlibCompressor
                                                                                    (ZlibCompressor.CompressionLevel.BestCompression, ZlibCompressor.CompressionStrategy
                                                                                    .DefaultStrategy, ZlibCompressor.CompressionHeader.DefaultHeader, ByteSize), new
                                                                                ZlibDecompressor(ZlibDecompressor.CompressionHeader.DefaultHeader, ByteSize)).WithTestCases
                    (ImmutableSet.Of(CompressDecompressTester.CompressionTestStrategy.CompressDecompressSingleBlock
                                     , CompressDecompressTester.CompressionTestStrategy.CompressDecompressBlock, CompressDecompressTester.CompressionTestStrategy
                                     .CompressDecompressErrors, CompressDecompressTester.CompressionTestStrategy.CompressDecompressWithEmptyStream
                                     )).Test();
            }
            catch (Exception ex)
            {
                NUnit.Framework.Assert.Fail("testCompressorDecompressorWithExeedBufferLimit error !!!"
                                            + ex);
            }
        }