public void ReadString_should_throw_when_terminating_null_byte_is_missing() { var bytes = new byte[] { 2, 0, 0, 0, 97, 1 }; var stream = new MemoryStream(bytes); var subject = new BsonStreamAdapter(stream); Action action = () => subject.ReadString(Utf8Encodings.Strict); action.ShouldThrow<FormatException>(); }
public void ReadString_should_throw_when_encoding_is_null() { var stream = Substitute.For<Stream>(); var subject = new BsonStreamAdapter(stream); Action action = () => subject.ReadString(null); action.ShouldThrow<ArgumentNullException>().And.ParamName.Should().Be("encoding"); }
public void ReadString_should_throw_when_subject_is_disposed() { var stream = Substitute.For<Stream>(); var subject = new BsonStreamAdapter(stream); subject.Dispose(); Action action = () => subject.ReadString(Utf8Encodings.Strict); action.ShouldThrow<ObjectDisposedException>().And.ObjectName.Should().Be("BsonStreamAdapter"); }
public void ReadString_should_return_expected_result(byte[] bytes, string expectedResult) { var stream = new MemoryStream(bytes); var subject = new BsonStreamAdapter(stream); var result = subject.ReadString(Utf8Encodings.Strict); result.Should().Be(expectedResult); subject.Position.Should().Be(bytes.Length); }