aboutsummaryrefslogtreecommitdiff
path: root/csharp/ProtocolBuffers.Test/MessageStreamIteratorTest.cs
diff options
context:
space:
mode:
authorJon Skeet <skeet@pobox.com>2008-08-19 21:24:21 +0100
committerJon Skeet <skeet@pobox.com>2008-08-19 21:24:21 +0100
commitad6903fe33ca0a79e7618a25e83de769438d18ce (patch)
treed6fe0b324922129167108298d6c0458607ac030b /csharp/ProtocolBuffers.Test/MessageStreamIteratorTest.cs
parentf09fed217f86d1fdb2db97631178060d6d50cda1 (diff)
downloadprotobuf-ad6903fe33ca0a79e7618a25e83de769438d18ce.tar.gz
protobuf-ad6903fe33ca0a79e7618a25e83de769438d18ce.tar.bz2
protobuf-ad6903fe33ca0a79e7618a25e83de769438d18ce.zip
Fix to constructor access for nested types, and first pass at streaming.
Diffstat (limited to 'csharp/ProtocolBuffers.Test/MessageStreamIteratorTest.cs')
-rw-r--r--csharp/ProtocolBuffers.Test/MessageStreamIteratorTest.cs23
1 files changed, 23 insertions, 0 deletions
diff --git a/csharp/ProtocolBuffers.Test/MessageStreamIteratorTest.cs b/csharp/ProtocolBuffers.Test/MessageStreamIteratorTest.cs
new file mode 100644
index 00000000..063f06d5
--- /dev/null
+++ b/csharp/ProtocolBuffers.Test/MessageStreamIteratorTest.cs
@@ -0,0 +1,23 @@
+using System.Collections;
+using System.Collections.Generic;
+using System.IO;
+using NUnit.Framework;
+using NestedMessage = Google.ProtocolBuffers.TestProtos.TestAllTypes.Types.NestedMessage;
+
+namespace Google.ProtocolBuffers {
+ [TestFixture]
+ public class MessageStreamIteratorTest {
+
+ [Test]
+ public void ThreeMessagesInMemory() {
+ MemoryStream stream = new MemoryStream(MessageStreamWriterTest.ThreeMessageData);
+ IEnumerable<NestedMessage> iterator = MessageStreamIterator.FromStreamProvider<NestedMessage>(() => stream);
+ List<NestedMessage> messages = new List<NestedMessage>(iterator);
+
+ Assert.AreEqual(3, messages.Count);
+ Assert.AreEqual(5, messages[0].Bb);
+ Assert.AreEqual(1500, messages[1].Bb);
+ Assert.IsFalse(messages[2].HasBb);
+ }
+ }
+}