aboutsummaryrefslogtreecommitdiff
path: root/src/ProtocolBuffers.Test/CodedInputStreamTest.cs
diff options
context:
space:
mode:
authorcsharptest <roger@csharptest.net>2011-06-03 14:15:21 -0500
committerrogerk <devnull@localhost>2011-06-03 14:15:21 -0500
commit123e534914df3dbdcd918ec4f8d79c47a3bf85e5 (patch)
tree036d1f3d61f9a5eb3dcb6950f35a0bd32022058e /src/ProtocolBuffers.Test/CodedInputStreamTest.cs
parentffafdaa0f9a96d17d456c844a3e554512a5c121d (diff)
downloadprotobuf-123e534914df3dbdcd918ec4f8d79c47a3bf85e5.tar.gz
protobuf-123e534914df3dbdcd918ec4f8d79c47a3bf85e5.tar.bz2
protobuf-123e534914df3dbdcd918ec4f8d79c47a3bf85e5.zip
Canged CodedInputStream.ReadTag to use boolean result with out params to
support reading a field name rather than a field tag.
Diffstat (limited to 'src/ProtocolBuffers.Test/CodedInputStreamTest.cs')
-rw-r--r--src/ProtocolBuffers.Test/CodedInputStreamTest.cs28
1 files changed, 18 insertions, 10 deletions
diff --git a/src/ProtocolBuffers.Test/CodedInputStreamTest.cs b/src/ProtocolBuffers.Test/CodedInputStreamTest.cs
index 878febee..a49b1ed3 100644
--- a/src/ProtocolBuffers.Test/CodedInputStreamTest.cs
+++ b/src/ProtocolBuffers.Test/CodedInputStreamTest.cs
@@ -283,16 +283,16 @@ namespace Google.ProtocolBuffers
CodedInputStream input2 = CodedInputStream.CreateInstance(rawBytes);
UnknownFieldSet.Builder unknownFields = UnknownFieldSet.CreateBuilder();
- while (true)
+ uint tag;
+ string name;
+ while (input1.ReadTag(out tag, out name))
{
- uint tag = input1.ReadTag();
- Assert.AreEqual(tag, input2.ReadTag());
- if (tag == 0)
- {
- break;
- }
+ uint tag2;
+ Assert.IsTrue(input2.ReadTag(out tag2, out name));
+ Assert.AreEqual(tag, tag2);
+
unknownFields.MergeFieldFrom(tag, input1);
- input2.SkipField(tag);
+ input2.SkipField();
}
}
@@ -355,7 +355,10 @@ namespace Google.ProtocolBuffers
ms.Position = 0;
CodedInputStream input = CodedInputStream.CreateInstance(ms);
- Assert.AreEqual(tag, input.ReadTag());
+ uint testtag;
+ string ignore;
+ Assert.IsTrue(input.ReadTag(out testtag, out ignore));
+ Assert.AreEqual(tag, testtag);
try
{
@@ -497,7 +500,12 @@ namespace Google.ProtocolBuffers
ms.Position = 0;
CodedInputStream input = CodedInputStream.CreateInstance(ms);
- Assert.AreEqual(tag, input.ReadTag());
+
+ uint testtag;
+ string ignored;
+
+ Assert.IsTrue(input.ReadTag(out testtag, out ignored));
+ Assert.AreEqual(tag, testtag);
string text = input.ReadString();
Assert.AreEqual('\ufffd', text[0]);
}