public void Read_1_1_1() { using (var stream = new MemoryStream(BitOperation.ParseToBytes("01101101 10000000"))) { using (var reader = new FibonacciUnsignedReader(stream)) { Assert.AreEqual((ulong)1, reader.Read()); Assert.AreEqual((ulong)1, reader.Read()); Assert.AreEqual((ulong)1, reader.Read()); } } }
public void WriteRead_First1000() { for (ulong input = 0; input < 1000; input++) { var encoded = FibonacciUnsignedWriter.WriteOneDefault(input); var output = FibonacciUnsignedReader.ReadOneDefault(encoded); Assert.AreEqual(input, output); } }
public void WriteRead_First1000_Appending() { ulong min = 0; ulong max = 1000; using (var stream = new MemoryStream()) { using (var writer = new FibonacciUnsignedWriter(stream)) { for (var i = min; i < max; i++) { writer.Write(i); } } stream.Position = 0; using (var reader = new FibonacciUnsignedReader(stream)) { for (var i = min; i < max; i++) { Assert.AreEqual(i, reader.Read()); } } } }
public void WriteRead_100000000000000() { var encoded = FibonacciUnsignedWriter.WriteOneDefault(100000000000000); Assert.AreEqual((ulong)100000000000000, FibonacciUnsignedReader.ReadOneDefault(encoded)); }
private ulong Read(string input) { return(FibonacciUnsignedReader.ReadOneDefault(BitOperation.ParseToBytes(input))); }