Ejemplo n.º 1
0
        public void EncodeDecode_ShouldGiveBacktheSameString(string txt)
        {
            var compressor = new HauffmanCompressor();
            var encoded    = compressor.FitEncode(new[] { txt });

            Assert.Equal(txt, compressor.Decode(encoded).First());
        }
Ejemplo n.º 2
0
        public void MoreFrequentCharacter_ShouldHavePathWithLengthOne(string[] texts, char moreFreqChar)
        {
            var compressor = new HauffmanCompressor();

            compressor.Fit(texts);

            Assert.Single(compressor.GetCharPath(moreFreqChar));
        }
Ejemplo n.º 3
0
        static void Main(string[] args)
        {
            Console.WriteLine("started");

            var output = new FileStream(Path.Combine(FolderPath, "lorem-ipsum-compressed.txt"), FileMode.Create);

            using BinaryWriter writer = new BinaryWriter(output);


            var compressor = new HauffmanCompressor();
            var compressed = compressor.FitEncode(ReadInputFile());

            foreach (var line in compressed)
            {
                writer.Write(line);
            }
        }