public void CompressContentTest() { Stream s = File.OpenWrite(@"D:\MFF\ZS_2019\c#_repos\Huffman1\Huffman1Tests\bin\Debug\netcoreapp3.0\TestFiles\Huff2\Outs\Compressed.out"); BinaryWriter writer = new BinaryWriter(s); Stream ins = File.OpenRead(@"D:\MFF\ZS_2019\c#_repos\Huffman1\Huffman1Tests\bin\Debug\netcoreapp3.0\TestFiles\Huff2\Ins\simple4.in"); BinaryReader reader = new BinaryReader(ins); HuffmanReader HuffReader = new HuffmanReader(reader); bool NotEmpty = HuffReader.ReadFileUsingBuffer(); //Build Huffman tree TreeBuilder Builder = new TreeBuilder(HuffReader.ProvideSymbolsWihtWeights()); Node Root = Builder.BuildHuffTree(); ins.Seek(0, 0); HuffCompresor.CompressContent(Root, writer, reader); writer.Close(); reader.Close(); bool same = Utils.FileDiff(@"D:\MFF\ZS_2019\c#_repos\Huffman1\Huffman1Tests\bin\Debug\netcoreapp3.0\TestFiles\Huff2\Outs\Compressed.huff", @"D:\MFF\ZS_2019\c#_repos\Huffman1\Huffman1Tests\bin\Debug\netcoreapp3.0\TestFiles\Huff2\Outs\Compressed.out"); Assert.IsTrue(same); }
public void CodeBytesTest() //no assert! { Stream ins = File.OpenRead(@"D:\MFF\ZS_2019\c#_repos\Huffman1\Huffman1Tests\bin\Debug\netcoreapp3.0\TestFiles\Huff2\Ins\simple4.in"); BinaryReader reader = new BinaryReader(ins); HuffmanReader HuffReader = new HuffmanReader(reader); bool NotEmpty = HuffReader.ReadFileUsingBuffer(); //Build Huffman tree TreeBuilder Builder = new TreeBuilder(HuffReader.ProvideSymbolsWihtWeights()); Node Root = Builder.BuildHuffTree(); TreePrinter.PrintNiceTree(Root, 0); Stack <byte> path = new Stack <byte>(); HuffCompresor.CodeBytes(Root, path); for (int i = 0; i < HuffCompresor.Codes.Length; i++) { if (HuffCompresor.Codes[i] != null) { Console.Write($"{i}: "); for (int j = 0; j < HuffCompresor.Codes[i].Length; j++) { Console.Write($"{HuffCompresor.Codes[i][j]} "); } Console.WriteLine(); } } }
public void GenHeaderTest() { //ulong b = 0x2B; Stream s = File.OpenWrite(@"D:\MFF\ZS_2019\c#_repos\Huffman1\Huffman1Tests\bin\Debug\netcoreapp3.0\TestFiles\Huff2\Outs\Header.out"); BinaryWriter writer = new BinaryWriter(s); HuffCompresor.GenHeader(writer); writer.Flush(); writer.Close(); s.Close(); bool same = Utils.FileDiff(@"D:\MFF\ZS_2019\c#_repos\Huffman1\Huffman1Tests\bin\Debug\netcoreapp3.0\TestFiles\Huff2\Ins\header.in", @"D:\MFF\ZS_2019\c#_repos\Huffman1\Huffman1Tests\bin\Debug\netcoreapp3.0\TestFiles\Huff2\Outs\Header.out"); Assert.IsTrue(same); }
public void CompressFileTest() { Stream s = File.OpenWrite(@"D:\MFF\ZS_2019\c#_repos\Huffman1\Huffman1Tests\bin\Debug\netcoreapp3.0\TestFiles\Huff2\Outs\simple4Comp.out"); BinaryWriter writer = new BinaryWriter(s); Stream ins = File.OpenRead(@"D:\MFF\ZS_2019\c#_repos\Huffman1\Huffman1Tests\bin\Debug\netcoreapp3.0\TestFiles\Huff2\Ins\simple4.in"); BinaryReader reader = new BinaryReader(ins); HuffCompresor.CompressFile(writer, reader); s.Close(); ins.Close(); bool same = Utils.FileDiff(@"D:\MFF\ZS_2019\c#_repos\Huffman1\Huffman1Tests\bin\Debug\netcoreapp3.0\TestFiles\Huff2\Outs\simple4.in.huff", @"D:\MFF\ZS_2019\c#_repos\Huffman1\Huffman1Tests\bin\Debug\netcoreapp3.0\TestFiles\Huff2\Outs\simple4Comp.out"); Assert.IsTrue(same); }
public void GenTreeTest() { Stream s = File.OpenWrite(@"D:\MFF\ZS_2019\c#_repos\Huffman1\Huffman1Tests\bin\Debug\netcoreapp3.0\TestFiles\Huff2\Outs\PrintTreeBin.out"); BinaryWriter writer = new BinaryWriter(s); Stream ins = File.OpenRead(@"D:\MFF\ZS_2019\c#_repos\Huffman1\Huffman1Tests\bin\Debug\netcoreapp3.0\TestFiles\Huff2\Ins\simple4.in"); BinaryReader reader = new BinaryReader(ins); HuffCompresor.GenTree(reader, writer); writer.Flush(); writer.Close(); reader.Close(); bool same = Utils.FileDiff(@"D:\MFF\ZS_2019\c#_repos\Huffman1\Huffman1Tests\bin\Debug\netcoreapp3.0\TestFiles\Huff2\Ins\Tree.in", @"D:\MFF\ZS_2019\c#_repos\Huffman1\Huffman1Tests\bin\Debug\netcoreapp3.0\TestFiles\Huff2\Outs\PrintTreeBin.out"); Assert.IsTrue(same); }