aboutsummaryrefslogblamecommitdiff
path: root/csharp/ProtocolBuffers.Test/MessageStreamIteratorTest.cs
blob: 063f06d5efcf3487a1221863da07f752224c14b0 (plain) (tree)






















                                                                                                                  
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);
    }
  }
}