diff options
Diffstat (limited to 'java/src/test/java/com/google/protobuf/CodedInputStreamTest.java')
-rw-r--r-- | java/src/test/java/com/google/protobuf/CodedInputStreamTest.java | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/java/src/test/java/com/google/protobuf/CodedInputStreamTest.java b/java/src/test/java/com/google/protobuf/CodedInputStreamTest.java index a75a400b..6acd3223 100644 --- a/java/src/test/java/com/google/protobuf/CodedInputStreamTest.java +++ b/java/src/test/java/com/google/protobuf/CodedInputStreamTest.java @@ -490,4 +490,18 @@ public class CodedInputStreamTest extends TestCase { assertEquals(0, in.readTag()); assertEquals(5, in.getTotalBytesRead()); } + + public void testInvalidTag() throws Exception { + // Any tag number which corresponds to field number zero is invalid and + // should throw InvalidProtocolBufferException. + for (int i = 0; i < 8; i++) { + try { + CodedInputStream.newInstance(bytes(i)).readTag(); + fail("Should have thrown an exception."); + } catch (InvalidProtocolBufferException e) { + assertEquals(InvalidProtocolBufferException.invalidTag().getMessage(), + e.getMessage()); + } + } + } } |