public void StandardCoderEncodeInput() { //given byte[] input = new byte[] { (byte)'A', (byte)'B', (byte)'C', (byte)'A', (byte)'B', (byte)'D', (byte)'A', (byte)'B', (byte)'C', (byte)'A' }; MockInputReader inputReader = new MockInputReader(input); MockCoderOutputWriter outputWriter = new MockCoderOutputWriter(); //when StandardHuffmanCoderInterface standardHuffmanCoderInterface = new StandardHuffmanCoderInterface(inputReader, outputWriter); standardHuffmanCoderInterface.Encode(); //then outputWriter.AssertEquals(new List <int>() { 0, 1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 1, 1, 0 }); }