當前位置: 首頁>>代碼示例>>C#>>正文


C# BsonStreamAdapter.ReadBytes方法代碼示例

本文整理匯總了C#中MongoDB.Bson.IO.BsonStreamAdapter.ReadBytes方法的典型用法代碼示例。如果您正苦於以下問題:C# BsonStreamAdapter.ReadBytes方法的具體用法?C# BsonStreamAdapter.ReadBytes怎麽用?C# BsonStreamAdapter.ReadBytes使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在MongoDB.Bson.IO.BsonStreamAdapter的用法示例。


在下文中一共展示了BsonStreamAdapter.ReadBytes方法的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: ReadBytes_with_count_should_return_expected_result

        public void ReadBytes_with_count_should_return_expected_result(
            [Values(0, 1, 2, 16)]
            int length)
        {
            var bytes = Enumerable.Range(0, length).Select(n => (byte)n).ToArray();

            using (var memoryStream = new MemoryStream(bytes))
            using (var stream = new BsonStreamAdapter(memoryStream))
            {
                var result = stream.ReadBytes(length);

                result.Should().Equal(bytes);
                stream.Position.Should().Be(length);
            }
        }
開發者ID:amitapl,項目名稱:mongo-csharp-driver,代碼行數:15,代碼來源:BsonStreamExtensionsTests.cs

示例2: ReadBytes_with_count_should_throw_when_at_end_of_stream

        public void ReadBytes_with_count_should_throw_when_at_end_of_stream()
        {
            using (var memoryStream = new MemoryStream())
            using (var stream = new BsonStreamAdapter(memoryStream))
            {
                Action action = () => stream.ReadBytes(1);

                action.ShouldThrow<EndOfStreamException>();
            }
        }
開發者ID:amitapl,項目名稱:mongo-csharp-driver,代碼行數:10,代碼來源:BsonStreamExtensionsTests.cs

示例3: ReadBytes_with_buffer_should_throw_when_at_end_of_stream

        public void ReadBytes_with_buffer_should_throw_when_at_end_of_stream(
            [Values(0, 1, 2, 16)]
            int length)
        {
            var bytes = Enumerable.Range(0, length).Select(n => (byte)n).ToArray();

            using (var memoryStream = new MemoryStream(bytes))
            using (var stream = new BsonStreamAdapter(memoryStream))
            {
                var buffer = new byte[length + 1];

                Action action = () => stream.ReadBytes(buffer, 0, length + 1);

                action.ShouldThrow<EndOfStreamException>();
            }
        }
開發者ID:amitapl,項目名稱:mongo-csharp-driver,代碼行數:16,代碼來源:BsonStreamExtensionsTests.cs

示例4: ReadBytes_with_buffer_should_optimize_count_of_one

        public void ReadBytes_with_buffer_should_optimize_count_of_one()
        {
            using (var baseStream = Substitute.For<Stream>())
            using (var stream = new BsonStreamAdapter(baseStream))
            {
                baseStream.ReadByte().Returns(1);
                var buffer = new byte[1];

                stream.ReadBytes(buffer, 0, 1);

                buffer.Should().Equal(new byte[] { 1 });
                baseStream.Received(1).ReadByte();
            }
        }
開發者ID:amitapl,項目名稱:mongo-csharp-driver,代碼行數:14,代碼來源:BsonStreamExtensionsTests.cs

示例5: ReadBytes_with_buffer_should_handle_partial_reads

        public void ReadBytes_with_buffer_should_handle_partial_reads()
        {
            using (var baseStream = Substitute.For<BsonStream>())
            using (var stream = new BsonStreamAdapter(baseStream))
            {
                var buffer = new byte[3];
                baseStream.Read(Arg.Any<byte[]>(), 0, 3).Returns(x => { var b = (byte[])x[0]; b[0] = 1; return 1; });
                baseStream.Read(Arg.Any<byte[]>(), 1, 2).Returns(x => { var b = (byte[])x[0]; b[1] = 2; b[2] = 3; return 2; });

                stream.ReadBytes(buffer, 0, 3);

                buffer.Should().Equal(new byte[] { 1, 2, 3 });
                baseStream.Received(1).Read(buffer, 0, 3);
                baseStream.Received(1).Read(buffer, 1, 2);
            }
        }
開發者ID:amitapl,項目名稱:mongo-csharp-driver,代碼行數:16,代碼來源:BsonStreamExtensionsTests.cs

示例6: ReadBytes_with_buffer_should_optimize_count_of_one

        public void ReadBytes_with_buffer_should_optimize_count_of_one()
        {
            var mockBaseStream = new Mock<BsonStream>();
            mockBaseStream.Setup(s => s.ReadByte()).Returns(1);

            using (var baseStream = mockBaseStream.Object)
            using (var stream = new BsonStreamAdapter(baseStream))
            {
                var buffer = new byte[1];

                stream.ReadBytes(buffer, 0, 1);

                buffer.Should().Equal(new byte[] { 1 });
                mockBaseStream.Verify(s => s.ReadByte(), Times.Once);
            }
        }
開發者ID:mfidemraizer,項目名稱:mongo-csharp-driver,代碼行數:16,代碼來源:BsonStreamExtensionsTests.cs

示例7: ReadBytes_with_buffer_should_handle_partial_reads

        public void ReadBytes_with_buffer_should_handle_partial_reads()
        {
            var mockBaseStream = new Mock<BsonStream>();
            var buffer = new byte[3];
            mockBaseStream.Setup(s => s.Read(It.IsAny<byte[]>(), 0, 3)).Returns((byte[] b, int o, int c) => { b[0] = 1; return 1; });
            mockBaseStream.Setup(s => s.Read(It.IsAny<byte[]>(), 1, 2)).Returns((byte[] b, int o, int c) => { b[1] = 2; b[2] = 3; return 2; });

            using (var baseStream = mockBaseStream.Object)
            using (var stream = new BsonStreamAdapter(baseStream))
            {
                stream.ReadBytes(buffer, 0, 3);

                buffer.Should().Equal(new byte[] { 1, 2, 3 });
                mockBaseStream.Verify(s => s.Read(buffer, 0, 3), Times.Once);
                mockBaseStream.Verify(s => s.Read(buffer, 1, 2), Times.Once);
            }
        }
開發者ID:mfidemraizer,項目名稱:mongo-csharp-driver,代碼行數:17,代碼來源:BsonStreamExtensionsTests.cs


注:本文中的MongoDB.Bson.IO.BsonStreamAdapter.ReadBytes方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。