public void Bible_should_return_injected_Bible() { var bible = new BibleStub(); var book = CreateBookUnderTest(bible); Assert.That(book.Bible, Is.SameAs(bible)); }
public void Write_with_null_output_should_throw() { var writer = CreateWriterUnderTest(); var bible = new BibleStub(); Assert.Throws<ArgumentNullException>(() => writer.Write(null, bible, null)); }
public void Write_with_more_than_255_tables_should_throw() { var writer = CreateWriterUnderTest(); var tables = CreateTables(300); var binaryWriter = new BinaryWriter(new MemoryStream()); var bible = new BibleStub(); Assert.Throws<InvalidOperationException>(() => writer.Write(binaryWriter, bible, tables)); }
public void Write_with_no_tables_should_write_simple_header() { var writer = CreateWriterUnderTest(); var binaryWriter = new BinaryWriter(new MemoryStream()); var binaryReader = new BinaryReader(binaryWriter.BaseStream); var bible = new BibleStub(); writer.Write(binaryWriter, bible, null); binaryWriter.Seek(0, SeekOrigin.Begin); var header = Header.ReadFrom(binaryReader); Assert.That(header.FileVersion, Is.EqualTo(BibleWriter.FileVersion)); Assert.That(header.HeaderRecords.Count, Is.EqualTo(0)); }
public void Write_with_single_table_should_write_header_and_table_data() { var bible = new BibleStub(); var writer = CreateWriterUnderTest(); var tableData = CreateByteArray('a', 2500); var tables = new [] {CreateBibleTableWriter(bible, tableData)}; var binaryWriter = new BinaryWriter(new MemoryStream()); var binaryReader = new BinaryReader(binaryWriter.BaseStream); writer.Write(binaryWriter, bible, tables); binaryWriter.Seek(0, SeekOrigin.Begin); var header = Header.ReadFrom(binaryReader); Assert.Ignore("TODO"); }