Exemplo n.º 1
0
 public void DeflateStream_Decompressor_2()
 {
     byte[] input       = new byte[] { 0x73, 0x74, 0x72, 0x76, 0x71, 0x75, 0x03, 0x00 };
     byte[] plaintext   = Encoding.UTF8.GetBytes("ABCDEF");
     byte[] decompBytes = DeflateCompressor.Decompress(input);
     Assert.IsTrue(decompBytes.SequenceEqual(plaintext));
 }
Exemplo n.º 2
0
        public void Decompress()
        {
            var    TestObject = new DeflateCompressor();
            string Data       = "This is a bit of data that I want to compress";

            Assert.Equal("This is a bit of data that I want to compress", TestObject.Decompress(TestObject.Compress(Data.ToByteArray())).ToString(null));
        }
        public async Task CompressDecompressString()
        {
            //ARRANGE
            var str        = "String to compress";
            var compressor = new DeflateCompressor();

            //ACT
            var strArr = Encoding.UTF8.GetBytes(str);
            var source = new MemoryStream(strArr);

            source.Position = 0;
            var compressed = new MemoryStream();
            await compressor.Compress(source, compressed);

            compressed.Position = 0;

            var decompressed = new MemoryStream();
            await compressor.Decompress(compressed, decompressed);

            decompressed.Position = 0;
            var result = new StreamReader(decompressed).ReadToEnd();

            //ASSERT
            Assert.AreEqual(str, result);
        }
Exemplo n.º 4
0
        public void DecompressTest()
        {
            DeflateCompressor target = new DeflateCompressor();

            using (Stream responseStream = new MemoryStream())
            {
                Stream actual = target.Decompress(responseStream);
                Assert.IsNotNull(actual);
            }
        }
Exemplo n.º 5
0
        public void DeflateStream_Compressor_2()
        {
            byte[] input = Encoding.UTF8.GetBytes("ABCDEF");

            // Compress first,
            // 73-74-72-76-71-75-03-00
            byte[] compBytes = DeflateCompressor.Compress(input);

            // then Decompress.
            byte[] decompBytes = DeflateCompressor.Decompress(compBytes);

            // Comprare SHA256 Digest
            byte[] inputDigest  = TestSetup.SHA256Digest(input);
            byte[] decompDigest = TestSetup.SHA256Digest(decompBytes);
            Assert.IsTrue(decompDigest.SequenceEqual(inputDigest));
        }
Exemplo n.º 6
0
        public void CompressDecompressTest()
        {
            DeflateCompressor target     = new DeflateCompressor();
            string            strContent = "Hello World";

            byte[] content = Encoding.ASCII.GetBytes(strContent);
            using (Stream requestStream = new MemoryStream())
            {
                var compressedStream = new DeflateStream(requestStream, CompressionMode.Compress);
                compressedStream.Write(content, 0, content.Length);
                Stream actual = target.Decompress(requestStream);
                Assert.IsNotNull(actual);
                actual.Read(content, 0, content.Length);
                string dString = Encoding.ASCII.GetString(content);
                Assert.IsTrue(string.Compare(strContent, dString, false) == 0);
            }
        }
Exemplo n.º 7
0
        public void DeflateStream_Decompressor_1()
        {
            void Template(string fileName)
            {
                string compPath   = Path.Combine(TestSetup.SampleDir, fileName + ".deflate");
                string decompPath = Path.Combine(TestSetup.SampleDir, fileName);

                using (FileStream decompFs = new FileStream(decompPath, FileMode.Open, FileAccess.Read, FileShare.Read))
                    using (FileStream compFs = new FileStream(compPath, FileMode.Open, FileAccess.Read, FileShare.Read))
                        using (MemoryStream decompMs = DeflateCompressor.Decompress(compFs))
                        {
                            // Compare SHA256 Digest
                            byte[] fileDigest   = TestSetup.SHA256Digest(decompFs);
                            byte[] decompDigest = TestSetup.SHA256Digest(decompMs);
                            Assert.IsTrue(decompDigest.SequenceEqual(fileDigest));
                        }
            }

            Template("ex1.jpg");
            Template("ex2.jpg");
            Template("ex3.jpg");
        }
Exemplo n.º 8
0
        public void DeflateStream_Compressor_1()
        {
            void Template(string fileName, ZLibCompLevel level)
            {
                string filePath = Path.Combine(TestSetup.SampleDir, fileName);

                using (FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read))
                    using (MemoryStream compMs = DeflateCompressor.Compress(fs))
                        using (MemoryStream decompMs = DeflateCompressor.Decompress(compMs))
                        {
                            // Compare SHA256 Digest
                            fs.Position = 0;
                            byte[] fileDigest   = TestSetup.SHA256Digest(fs);
                            byte[] decompDigest = TestSetup.SHA256Digest(decompMs);
                            Assert.IsTrue(decompDigest.SequenceEqual(fileDigest));
                        }
            }

            Template("ex1.jpg", ZLibCompLevel.Default);
            Template("ex2.jpg", ZLibCompLevel.BestCompression);
            Template("ex3.jpg", ZLibCompLevel.BestSpeed);
        }