1e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// Protocol Buffers - Google's data interchange format 2e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// Copyright 2008 Google Inc. All rights reserved. 3e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// http://code.google.com/p/protobuf/ 4e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// 5e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// Redistribution and use in source and binary forms, with or without 6e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// modification, are permitted provided that the following conditions are 7e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// met: 8e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// 9e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// * Redistributions of source code must retain the above copyright 10e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// notice, this list of conditions and the following disclaimer. 11e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// * Redistributions in binary form must reproduce the above 12e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// copyright notice, this list of conditions and the following disclaimer 13e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// in the documentation and/or other materials provided with the 14e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// distribution. 15e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// * Neither the name of Google Inc. nor the names of its 16e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// contributors may be used to endorse or promote products derived from 17e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// this software without specific prior written permission. 18e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// 19e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 20e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 21e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 22e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 23e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 24e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 25e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 26e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 27e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 28e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 29e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 31e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Savillepackage com.google.protobuf; 32e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 338170787391efcb6cc6a8babc1cce35d5b1aff420Max Caiimport com.google.protobuf.micro.ByteStringMicro; 348170787391efcb6cc6a8babc1cce35d5b1aff420Max Caiimport com.google.protobuf.micro.CodedInputStreamMicro; 35624c448fbef20a1a2fad2289f622b468c25763d1Max Caiimport com.google.protobuf.micro.FileScopeEnumRefMicro; 36624c448fbef20a1a2fad2289f622b468c25763d1Max Caiimport com.google.protobuf.micro.MessageScopeEnumRefMicro; 37e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Savilleimport com.google.protobuf.micro.MicroOuterClass; 38e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Savilleimport com.google.protobuf.micro.MicroOuterClass.TestAllTypesMicro; 398170787391efcb6cc6a8babc1cce35d5b1aff420Max Caiimport com.google.protobuf.micro.MultipleImportingNonMultipleMicro1; 408170787391efcb6cc6a8babc1cce35d5b1aff420Max Caiimport com.google.protobuf.micro.MultipleImportingNonMultipleMicro2; 41624c448fbef20a1a2fad2289f622b468c25763d1Max Caiimport com.google.protobuf.micro.MultipleNameClashMicro; 42e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Savilleimport com.google.protobuf.micro.UnittestImportMicro; 43624c448fbef20a1a2fad2289f622b468c25763d1Max Caiimport com.google.protobuf.micro.UnittestMultipleMicro; 44624c448fbef20a1a2fad2289f622b468c25763d1Max Caiimport com.google.protobuf.micro.UnittestRecursiveMicro.RecursiveMessageMicro; 45624c448fbef20a1a2fad2289f622b468c25763d1Max Caiimport com.google.protobuf.micro.UnittestSimpleMicro.SimpleMessageMicro; 46624c448fbef20a1a2fad2289f622b468c25763d1Max Caiimport com.google.protobuf.micro.UnittestSingleMicro.SingleMessageMicro; 47624c448fbef20a1a2fad2289f622b468c25763d1Max Caiimport com.google.protobuf.micro.UnittestStringutf8Micro.StringUtf8; 48e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 49e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Savilleimport junit.framework.TestCase; 50e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 518a2f7578bb6289415f1d0a01c9cc96d283730480Wink Savilleimport java.io.ByteArrayInputStream; 528a2f7578bb6289415f1d0a01c9cc96d283730480Wink Savilleimport java.io.FilterInputStream; 538a2f7578bb6289415f1d0a01c9cc96d283730480Wink Savilleimport java.io.InputStream; 548a2f7578bb6289415f1d0a01c9cc96d283730480Wink Savilleimport java.io.IOException; 558a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville 56e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville/** 57e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville * Test micro runtime. 58e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville * 59e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville * @author wink@google.com Wink Saville 60e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville */ 61e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Savillepublic class MicroTest extends TestCase { 62e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void setUp() throws Exception { 63e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 64e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 65e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testSimpleMessageMicro() throws Exception { 66e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville SimpleMessageMicro msg = new SimpleMessageMicro(); 67e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasD()); 68e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getD()); 69e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasNestedMsg()); 70e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(null, msg.getNestedMsg()); 71e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultNestedEnum()); 72e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(SimpleMessageMicro.BAZ, msg.getDefaultNestedEnum()); 73e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 74e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setD(456); 75e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasD()); 76e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getD()); 77e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearD() 78e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setD(456); 79e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasD()); 80e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 81e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville SimpleMessageMicro.NestedMessage nestedMsg = new SimpleMessageMicro.NestedMessage() 82e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setBb(2); 83e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(nestedMsg.hasBb()); 84e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, nestedMsg.getBb()); 85e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setNestedMsg(nestedMsg); 86e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasNestedMsg()); 87e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getNestedMsg().getBb()); 88e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 89e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setDefaultNestedEnum(SimpleMessageMicro.BAR); 90e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasDefaultNestedEnum()); 91e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(SimpleMessageMicro.BAR, msg.getDefaultNestedEnum()); 92e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 93e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 94e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 95e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 96e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 9); 97e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 98e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 99e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville SimpleMessageMicro newMsg = SimpleMessageMicro.parseFrom(result); 100e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasD()); 101e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasNestedMsg()); 102e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasDefaultNestedEnum()); 103e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, newMsg.getD()); 104e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getNestedMsg().getBb()); 105e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(SimpleMessageMicro.BAR, msg.getDefaultNestedEnum()); 106e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 107e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 108e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testRecursiveMessageMicro() throws Exception { 109e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville RecursiveMessageMicro msg = new RecursiveMessageMicro(); 110e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasId()); 111e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasNestedMessage()); 112e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalRecursiveMessageMicro()); 113e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedRecursiveMessageMicroCount()); 114e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 115e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville RecursiveMessageMicro msg1 = new RecursiveMessageMicro(); 116e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg1.setId(1); 117e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg1.getId()); 118e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville RecursiveMessageMicro msg2 = new RecursiveMessageMicro(); 119e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg2.setId(2); 120e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville RecursiveMessageMicro msg3 = new RecursiveMessageMicro(); 121e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg3.setId(3); 122e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 123e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville RecursiveMessageMicro.NestedMessage nestedMsg = new RecursiveMessageMicro.NestedMessage(); 124e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville nestedMsg.setA(msg1); 125e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, nestedMsg.getA().getId()); 126e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 127e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setId(0); 128e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setNestedMessage(nestedMsg); 129e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalRecursiveMessageMicro(msg2); 130e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedRecursiveMessageMicro(msg3); 131e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 132e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 133e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 134e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 135e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 16); 136e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 137e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 138e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville RecursiveMessageMicro newMsg = RecursiveMessageMicro.parseFrom(result); 139e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasId()); 140e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasNestedMessage()); 141e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalRecursiveMessageMicro()); 142e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedRecursiveMessageMicroCount()); 143e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 144e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, newMsg.getId()); 145e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getNestedMessage().getA().getId()); 146e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getOptionalRecursiveMessageMicro().getId()); 147e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(3, newMsg.getRepeatedRecursiveMessageMicro(0).getId()); 148e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 149e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 150e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRequiredInt32() throws Exception { 151e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 152e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasId()); 153e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.isInitialized()); 154e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setId(123); 155e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasId()); 156e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.isInitialized()); 157e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getId()); 158e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearId(); 159e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasId()); 160e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.isInitialized()); 161e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearId() 162e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setId(456); 163e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasId()); 164e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 165e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasId()); 166e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.isInitialized()); 167e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 168e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setId(123); 169e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 170e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 171e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 172e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 3); 173e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 174e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 175e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 176e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasId()); 177e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.isInitialized()); 178e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getId()); 179e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 180e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 181e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalInt32() throws Exception { 182e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 183e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalInt32()); 184e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalInt32(123); 185e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalInt32()); 186e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getOptionalInt32()); 187e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalInt32(); 188e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalInt32()); 189e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalInt32() 190e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalInt32(456); 191e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalInt32()); 192e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 193e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalInt32()); 194e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 195e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalInt32(123); 196e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 197e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 198e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 199e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 2); 200e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 201e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 202e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 203e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalInt32()); 204e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getOptionalInt32()); 205e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 206e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 207e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalInt64() throws Exception { 208e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 209e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalInt64()); 210e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalInt64(123); 211e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalInt64()); 212e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getOptionalInt64()); 213e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalInt64(); 214e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalInt64()); 215e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalInt64() 216e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalInt64(456); 217e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalInt64()); 218e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 219e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalInt64()); 220e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 221e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalInt64(123); 222e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 223e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 224e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 225e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 2); 226e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 227e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 228e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 229e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalInt64()); 230e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getOptionalInt64()); 231e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 232e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 233e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalUint32() throws Exception { 234e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 235e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalUint32()); 236e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalUint32(123); 237e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalUint32()); 238e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getOptionalUint32()); 239e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalUint32(); 240e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalUint32()); 241e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalUint32() 242e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalUint32(456); 243e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalUint32()); 244e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 245e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalUint32()); 246e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 247e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalUint32(123); 248e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 249e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 250e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 251e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 2); 252e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 253e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 254e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 255e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalUint32()); 256e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getOptionalUint32()); 257e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 258e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 259e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalUint64() throws Exception { 260e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 261e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalUint64()); 262e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalUint64(123); 263e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalUint64()); 264e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getOptionalUint64()); 265e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalUint64(); 266e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalUint64()); 267e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalUint64() 268e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalUint64(456); 269e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalUint64()); 270e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 271e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalUint64()); 272e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 273e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalUint64(123); 274e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 275e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 276e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 277e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 2); 278e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 279e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 280e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 281e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalUint64()); 282e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getOptionalUint64()); 283e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 284e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 285e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalSint32() throws Exception { 286e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 287e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalSint32()); 288e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalSint32(123); 289e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalSint32()); 290e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getOptionalSint32()); 291e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalSint32(); 292e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalSint32()); 293e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalSint32() 294e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalSint32(456); 295e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalSint32()); 296e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 297e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalSint32()); 298e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 299e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalSint32(-123); 300e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 301e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 302e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 303e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 3); 304e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 305e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 306e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 307e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalSint32()); 308e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(-123, newMsg.getOptionalSint32()); 309e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 310e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 311e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalSint64() throws Exception { 312e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 313e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalSint64()); 314e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalSint64(123); 315e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalSint64()); 316e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getOptionalSint64()); 317e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalSint64(); 318e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalSint64()); 319e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalSint64() 320e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalSint64(456); 321e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalSint64()); 322e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 323e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalSint64()); 324e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 325e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalSint64(-123); 326e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 327e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 328e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 329e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 3); 330e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 331e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 332e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 333e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalSint64()); 334e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(-123, newMsg.getOptionalSint64()); 335e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 336e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 337e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalFixed32() throws Exception { 338e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 339e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalFixed32()); 340e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalFixed32(123); 341e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalFixed32()); 342e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getOptionalFixed32()); 343e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalFixed32(); 344e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalFixed32()); 345e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalFixed32() 346e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalFixed32(456); 347e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalFixed32()); 348e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 349e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalFixed32()); 350e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 351e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalFixed32(123); 352e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 353e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 354e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 355e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 5); 356e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 357e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 358e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 359e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalFixed32()); 360e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getOptionalFixed32()); 361e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 362e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 363e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalFixed64() throws Exception { 364e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 365e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalFixed64()); 366e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalFixed64(123); 367e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalFixed64()); 368e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getOptionalFixed64()); 369e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalFixed64(); 370e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalFixed64()); 371e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalFixed64() 372e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalFixed64(456); 373e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalFixed64()); 374e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 375e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalFixed64()); 376e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 377e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalFixed64(123); 378e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 379e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 380e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 381e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 9); 382e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 383e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 384e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 385e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalFixed64()); 386e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getOptionalFixed64()); 387e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 388e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalSfixed32() throws Exception { 389e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 390e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalSfixed32()); 391e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalSfixed32(123); 392e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalSfixed32()); 393e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getOptionalSfixed32()); 394e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalSfixed32(); 395e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalSfixed32()); 396e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalSfixed32() 397e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalSfixed32(456); 398e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalSfixed32()); 399e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 400e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalSfixed32()); 401e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 402e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalSfixed32(123); 403e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 404e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 405e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 406e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 5); 407e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 408e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 409e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 410e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalSfixed32()); 411e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getOptionalSfixed32()); 412e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 413e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 414e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalSfixed64() throws Exception { 415e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 416e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalSfixed64()); 417e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalSfixed64(123); 418e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalSfixed64()); 419e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getOptionalSfixed64()); 420e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalSfixed64(); 421e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalSfixed64()); 422e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalSfixed64() 423e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalSfixed64(456); 424e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalSfixed64()); 425e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 426e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalSfixed64()); 427e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 428e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalSfixed64(-123); 429e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 430e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 431e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 432e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 9); 433e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 434e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 435e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 436e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalSfixed64()); 437e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(-123, newMsg.getOptionalSfixed64()); 438e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 439e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 440e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalFloat() throws Exception { 441e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 442e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalFloat()); 443e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalFloat(123f); 444e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalFloat()); 445e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(123.0f == msg.getOptionalFloat()); 446e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalFloat(); 447e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalFloat()); 448e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalFloat() 449e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalFloat(456.0f); 450e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalFloat()); 451e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 452e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalFloat()); 453e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 454e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalFloat(-123.456f); 455e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 456e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 457e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 458e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 5); 459e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 460e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 461e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 462e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalFloat()); 463e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(-123.456f == newMsg.getOptionalFloat()); 464e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 465e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 466e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalDouble() throws Exception { 467e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 468e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalDouble()); 469e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalDouble(123); 470e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalDouble()); 471e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(123.0 == msg.getOptionalDouble()); 472e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalDouble(); 473e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalDouble()); 474e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalDouble() 475e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalDouble(456.0); 476e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalDouble()); 477e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 478e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalDouble()); 479e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 480e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalDouble(-123.456); 481e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 482e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 483e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 484e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 9); 485e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 486e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 487e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 488e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalDouble()); 489e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(-123.456 == newMsg.getOptionalDouble()); 490e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 491e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 492e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalBool() throws Exception { 493e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 494e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalBool()); 495e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalBool(true); 496e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalBool()); 497e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(true, msg.getOptionalBool()); 498e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalBool(); 499e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalBool()); 500e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalBool() 501e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalBool(true); 502e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalBool()); 503e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 504e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalBool()); 505e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 506e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalBool(false); 507e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 508e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 509e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 510e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 2); 511e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 512e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 513e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 514e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalBool()); 515e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(false, newMsg.getOptionalBool()); 516e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 517e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 518e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalString() throws Exception { 519e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 520e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalString()); 521e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalString("hello"); 522e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalString()); 523e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", msg.getOptionalString()); 524e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalString(); 525e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalString()); 526e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalString() 527e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalString("hello"); 528e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalString()); 529e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 530e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalString()); 531e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 532e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalString("bye"); 533e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 534e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 535e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 536e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 5); 537e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 538e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 539e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 540e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalString()); 541e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("bye", newMsg.getOptionalString()); 542e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 543e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 544e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalBytes() throws Exception { 545e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 546e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalBytes()); 547e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalBytes(ByteStringMicro.copyFromUtf8("hello")); 548e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalBytes()); 549e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", msg.getOptionalBytes().toStringUtf8()); 550e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalBytes(); 551e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalBytes()); 552e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalBytes() 553e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalBytes(ByteStringMicro.copyFromUtf8("hello")); 554e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalBytes()); 555e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 556e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalBytes()); 557e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 558e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalBytes(ByteStringMicro.copyFromUtf8("bye")); 559e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 560e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 561e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 562e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 5); 563e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 564e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 565e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 566e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalBytes()); 567e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("bye", newMsg.getOptionalBytes().toStringUtf8()); 568e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 569e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 570e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalGroup() throws Exception { 571e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 572e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro.OptionalGroup grp = new TestAllTypesMicro.OptionalGroup(); 573e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville grp.setA(1); 574e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalGroup()); 575e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalGroup(grp); 576e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalGroup()); 577e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getOptionalGroup().getA()); 578e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalGroup(); 579e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalGroup()); 580e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalGroup() 581e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalGroup(new TestAllTypesMicro.OptionalGroup().setA(2)); 582e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalGroup()); 583e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 584e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalGroup()); 585e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 586e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalGroup(grp); 587e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 588e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 589e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 590e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 7); 591e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 592e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 593e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 594e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalGroup()); 595e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getOptionalGroup().getA()); 596e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 597e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 598e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalNestedMessage() throws Exception { 599e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 600e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro.NestedMessage nestedMsg = new TestAllTypesMicro.NestedMessage(); 601e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville nestedMsg.setBb(1); 602e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalNestedMessage()); 603e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalNestedMessage(nestedMsg); 604e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalNestedMessage()); 605e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getOptionalNestedMessage().getBb()); 606e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalNestedMessage(); 607e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalNestedMessage()); 608e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalNestedMessage() 609e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalNestedMessage(new TestAllTypesMicro.NestedMessage().setBb(2)); 610e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalNestedMessage()); 611e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 612e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalNestedMessage()); 613e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 614e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalNestedMessage(nestedMsg); 615e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 616e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 617e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 618e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 5); 619e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 620e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 621e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 622e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalNestedMessage()); 623e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getOptionalNestedMessage().getBb()); 624e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 625e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 626e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalForeignMessage() throws Exception { 627e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 628e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville MicroOuterClass.ForeignMessageMicro foreignMsg = 629e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville new MicroOuterClass.ForeignMessageMicro(); 630e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(foreignMsg.hasC()); 631e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville foreignMsg.setC(1); 632e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(foreignMsg.hasC()); 633e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalForeignMessage()); 634e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalForeignMessage(foreignMsg); 635e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalForeignMessage()); 636e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getOptionalForeignMessage().getC()); 637e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalForeignMessage(); 638e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalForeignMessage()); 639e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalForeignMessage() 640e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalForeignMessage(new MicroOuterClass.ForeignMessageMicro().setC(2)); 641e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalForeignMessage()); 642e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 643e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalForeignMessage()); 644e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 645e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalForeignMessage(foreignMsg); 646e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 647e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 648e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 649e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 5); 650e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 651e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 652e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 653e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalForeignMessage()); 654e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getOptionalForeignMessage().getC()); 655e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 656e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 657e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalImportMessage() throws Exception { 658e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 659e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville UnittestImportMicro.ImportMessageMicro importMsg = 660e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville new UnittestImportMicro.ImportMessageMicro(); 661e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(importMsg.hasD()); 662e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville importMsg.setD(1); 663e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(importMsg.hasD()); 664e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalImportMessage()); 665e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalImportMessage(importMsg); 666e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalImportMessage()); 667e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getOptionalImportMessage().getD()); 668e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalImportMessage(); 669e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalImportMessage()); 670e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalImportMessage() 671e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalImportMessage(new UnittestImportMicro.ImportMessageMicro().setD(2)); 672e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalImportMessage()); 673e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 674e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalImportMessage()); 675e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 676e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalImportMessage(importMsg); 677e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 678e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 679e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 680e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 5); 681e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 682e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 683e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 684e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalImportMessage()); 685e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getOptionalImportMessage().getD()); 686e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 687e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 688e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalNestedEnum() throws Exception { 689e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 690e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalNestedEnum(TestAllTypesMicro.BAR); 691e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalNestedEnum()); 692e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(TestAllTypesMicro.BAR, msg.getOptionalNestedEnum()); 693e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalNestedEnum(); 694e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalNestedEnum()); 695e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalNestedEnum() 696e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalNestedEnum(TestAllTypesMicro.BAZ); 697e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalNestedEnum()); 698e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 699e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalNestedEnum()); 700e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 701e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalNestedEnum(TestAllTypesMicro.BAR); 702e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 703e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 704e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 705e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 3); 706e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 707e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 708e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 709e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalNestedEnum()); 710e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(TestAllTypesMicro.BAR, newMsg.getOptionalNestedEnum()); 711e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 712e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 713e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalForeignEnum() throws Exception { 714e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 715e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalForeignEnum(MicroOuterClass.FOREIGN_MICRO_BAR); 716e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalForeignEnum()); 717e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(MicroOuterClass.FOREIGN_MICRO_BAR, 718e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.getOptionalForeignEnum()); 719e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalForeignEnum(); 720e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalForeignEnum()); 721e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalForeignEnum() 722e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalForeignEnum(MicroOuterClass.FOREIGN_MICRO_BAZ); 723e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalForeignEnum()); 724e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 725e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalForeignEnum()); 726e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 727e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalForeignEnum(MicroOuterClass.FOREIGN_MICRO_BAR); 728e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 729e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 730e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 731e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 3); 732e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 733e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 734e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 735e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalForeignEnum()); 736e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(MicroOuterClass.FOREIGN_MICRO_BAR, 737e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg.getOptionalForeignEnum()); 738e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 739e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 740e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalImportEnum() throws Exception { 741e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 742e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalImportEnum(UnittestImportMicro.IMPORT_MICRO_BAR); 743e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalImportEnum()); 744e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(UnittestImportMicro.IMPORT_MICRO_BAR, 745e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.getOptionalImportEnum()); 746e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalImportEnum(); 747e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalImportEnum()); 748e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalImportEnum() 749e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalImportEnum(UnittestImportMicro.IMPORT_MICRO_BAZ); 750e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalImportEnum()); 751e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 752e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalImportEnum()); 753e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 754e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalImportEnum(UnittestImportMicro.IMPORT_MICRO_BAR); 755e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 756e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 757e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 758e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 3); 759e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 760e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 761e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 762e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalImportEnum()); 763e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(UnittestImportMicro.IMPORT_MICRO_BAR, 764e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg.getOptionalImportEnum()); 765e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 766e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 767e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalStringPiece() throws Exception { 768e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 769e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalStringPiece()); 770e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalStringPiece("hello"); 771e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalStringPiece()); 772e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", msg.getOptionalStringPiece()); 773e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalStringPiece(); 774e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalStringPiece()); 775e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalStringPiece() 776e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalStringPiece("hello"); 777e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalStringPiece()); 778e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 779e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalStringPiece()); 780e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 781e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalStringPiece("bye"); 782e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 783e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 784e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 785e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 6); 786e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 787e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 788e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 789e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalStringPiece()); 790e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("bye", newMsg.getOptionalStringPiece()); 791e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 792e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 793e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroOptionalCord() throws Exception { 794e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 795e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalCord()); 796e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalCord("hello"); 797e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalCord()); 798e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", msg.getOptionalCord()); 799e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalCord(); 800e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalCord()); 801e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearOptionalCord() 802e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .setOptionalCord("hello"); 803e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msg.hasOptionalCord()); 804e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 805e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasOptionalCord()); 806e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 807e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setOptionalCord("bye"); 808e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 809e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 810e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 811e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 6); 812e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 813e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 814e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 815e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(newMsg.hasOptionalCord()); 816e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("bye", newMsg.getOptionalCord()); 817e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 818e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 819e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedInt32() throws Exception { 820e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 821e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedInt32Count()); 822e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedInt32(123); 823e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedInt32Count()); 824e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedInt32(0)); 825e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedInt32(456); 826e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedInt32Count()); 827e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedInt32(0)); 828e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedInt32(1)); 829e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedInt32(0, 789); 830e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedInt32Count()); 831e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(789, msg.getRepeatedInt32(0)); 832e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedInt32(1)); 833e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedInt32(); 834e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedInt32Count()); 835e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedInt32() 836e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedInt32(456); 837e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedInt32Count()); 838e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedInt32(0)); 839e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 840e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedInt32Count()); 841e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 842e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 843e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 844e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedInt32(123); 845e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedInt32Count()); 846e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 847e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 848e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 849e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 3); 850e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 851e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 852e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedInt32Count()); 853e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedInt32(0)); 854e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 855e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 856e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 857e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedInt32(123) 858e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedInt32(456); 859e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedInt32Count()); 860e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 861e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 862e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 863e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 7); 864e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 865e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 866e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 867e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedInt32Count()); 868e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedInt32(0)); 869e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, newMsg.getRepeatedInt32(1)); 870e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 871e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 872e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedInt64() throws Exception { 873e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 874e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedInt64Count()); 875e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedInt64(123); 876e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedInt64Count()); 877e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedInt64(0)); 878e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedInt64(456); 879e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedInt64Count()); 880e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedInt64(0)); 881e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedInt64(1)); 882e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedInt64(0, 789); 883e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedInt64Count()); 884e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(789, msg.getRepeatedInt64(0)); 885e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedInt64(1)); 886e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedInt64(); 887e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedInt64Count()); 888e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedInt64() 889e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedInt64(456); 890e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedInt64Count()); 891e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedInt64(0)); 892e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 893e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedInt64Count()); 894e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 895e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 896e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 897e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedInt64(123); 898e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedInt64Count()); 899e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 900e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 901e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 902e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 3); 903e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 904e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 905e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedInt64Count()); 906e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedInt64(0)); 907e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 908e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 909e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 910e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedInt64(123) 911e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedInt64(456); 912e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedInt64Count()); 913e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 914e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 915e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 916e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 7); 917e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 918e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 919e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 920e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedInt64Count()); 921e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedInt64(0)); 922e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, newMsg.getRepeatedInt64(1)); 923e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 924e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 925e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedUint32() throws Exception { 926e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 927e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedUint32Count()); 928e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedUint32(123); 929e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedUint32Count()); 930e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedUint32(0)); 931e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedUint32(456); 932e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedUint32Count()); 933e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedUint32(0)); 934e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedUint32(1)); 935e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedUint32(0, 789); 936e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedUint32Count()); 937e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(789, msg.getRepeatedUint32(0)); 938e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedUint32(1)); 939e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedUint32(); 940e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedUint32Count()); 941e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedUint32() 942e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedUint32(456); 943e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedUint32Count()); 944e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedUint32(0)); 945e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 946e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedUint32Count()); 947e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 948e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 949e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 950e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedUint32(123); 951e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedUint32Count()); 952e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 953e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 954e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 955e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 3); 956e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 957e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 958e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedUint32Count()); 959e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedUint32(0)); 960e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 961e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 962e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 963e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedUint32(123) 964e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedUint32(456); 965e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedUint32Count()); 966e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 967e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 968e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 969e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 7); 970e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 971e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 972e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 973e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedUint32Count()); 974e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedUint32(0)); 975e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, newMsg.getRepeatedUint32(1)); 976e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 977e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 978e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedUint64() throws Exception { 979e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 980e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedUint64Count()); 981e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedUint64(123); 982e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedUint64Count()); 983e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedUint64(0)); 984e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedUint64(456); 985e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedUint64Count()); 986e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedUint64(0)); 987e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedUint64(1)); 988e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedUint64(0, 789); 989e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedUint64Count()); 990e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(789, msg.getRepeatedUint64(0)); 991e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedUint64(1)); 992e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedUint64(); 993e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedUint64Count()); 994e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedUint64() 995e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedUint64(456); 996e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedUint64Count()); 997e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedUint64(0)); 998e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 999e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedUint64Count()); 1000e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1001e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 1002e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1003e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedUint64(123); 1004e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedUint64Count()); 1005e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1006e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1007e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1008e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 3); 1009e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1010e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1011e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedUint64Count()); 1012e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedUint64(0)); 1013e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1014e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1015e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1016e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedUint64(123) 1017e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedUint64(456); 1018e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedUint64Count()); 1019e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1020e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1021e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1022e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 7); 1023e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1024e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1025e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 1026e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedUint64Count()); 1027e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedUint64(0)); 1028e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, newMsg.getRepeatedUint64(1)); 1029e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 1030e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1031e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedSint32() throws Exception { 1032e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 1033e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedSint32Count()); 1034e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedSint32(123); 1035e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedSint32Count()); 1036e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedSint32(0)); 1037e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedSint32(456); 1038e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedSint32Count()); 1039e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedSint32(0)); 1040e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedSint32(1)); 1041e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedSint32(0, 789); 1042e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedSint32Count()); 1043e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(789, msg.getRepeatedSint32(0)); 1044e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedSint32(1)); 1045e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedSint32(); 1046e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedSint32Count()); 1047e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedSint32() 1048e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedSint32(456); 1049e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedSint32Count()); 1050e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedSint32(0)); 1051e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 1052e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedSint32Count()); 1053e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1054e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 1055e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1056e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedSint32(123); 1057e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedSint32Count()); 1058e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1059e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1060e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1061e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 4); 1062e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1063e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1064e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedSint32Count()); 1065e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedSint32(0)); 1066e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1067e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1068e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1069e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedSint32(123) 1070e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedSint32(456); 1071e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedSint32Count()); 1072e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1073e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1074e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1075e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 8); 1076e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1077e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1078e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 1079e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedSint32Count()); 1080e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedSint32(0)); 1081e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, newMsg.getRepeatedSint32(1)); 1082e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 1083e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1084e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedSint64() throws Exception { 1085e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 1086e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedSint64Count()); 1087e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedSint64(123); 1088e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedSint64Count()); 1089e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedSint64(0)); 1090e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedSint64(456); 1091e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedSint64Count()); 1092e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedSint64(0)); 1093e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedSint64(1)); 1094e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedSint64(0, 789); 1095e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedSint64Count()); 1096e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(789, msg.getRepeatedSint64(0)); 1097e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedSint64(1)); 1098e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedSint64(); 1099e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedSint64Count()); 1100e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedSint64() 1101e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedSint64(456); 1102e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedSint64Count()); 1103e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedSint64(0)); 1104e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 1105e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedSint64Count()); 1106e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1107e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 1108e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1109e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedSint64(123); 1110e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedSint64Count()); 1111e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1112e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1113e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1114e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 4); 1115e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1116e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1117e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedSint64Count()); 1118e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedSint64(0)); 1119e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1120e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1121e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1122e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedSint64(123) 1123e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedSint64(456); 1124e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedSint64Count()); 1125e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1126e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1127e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1128e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 8); 1129e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1130e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1131e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 1132e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedSint64Count()); 1133e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedSint64(0)); 1134e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, newMsg.getRepeatedSint64(1)); 1135e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 1136e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1137e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedFixed32() throws Exception { 1138e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 1139e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedFixed32Count()); 1140e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedFixed32(123); 1141e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedFixed32Count()); 1142e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedFixed32(0)); 1143e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedFixed32(456); 1144e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedFixed32Count()); 1145e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedFixed32(0)); 1146e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedFixed32(1)); 1147e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedFixed32(0, 789); 1148e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedFixed32Count()); 1149e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(789, msg.getRepeatedFixed32(0)); 1150e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedFixed32(1)); 1151e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedFixed32(); 1152e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedFixed32Count()); 1153e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedFixed32() 1154e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedFixed32(456); 1155e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedFixed32Count()); 1156e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedFixed32(0)); 1157e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 1158e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedFixed32Count()); 1159e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1160e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 1161e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1162e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedFixed32(123); 1163e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedFixed32Count()); 1164e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1165e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1166e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1167e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 6); 1168e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1169e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1170e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedFixed32Count()); 1171e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedFixed32(0)); 1172e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1173e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1174e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1175e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedFixed32(123) 1176e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedFixed32(456); 1177e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedFixed32Count()); 1178e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1179e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1180e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1181e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 12); 1182e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1183e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1184e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 1185e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedFixed32Count()); 1186e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedFixed32(0)); 1187e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, newMsg.getRepeatedFixed32(1)); 1188e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 1189e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1190e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedFixed64() throws Exception { 1191e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 1192e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedFixed64Count()); 1193e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedFixed64(123); 1194e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedFixed64Count()); 1195e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedFixed64(0)); 1196e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedFixed64(456); 1197e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedFixed64Count()); 1198e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedFixed64(0)); 1199e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedFixed64(1)); 1200e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedFixed64(0, 789); 1201e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedFixed64Count()); 1202e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(789, msg.getRepeatedFixed64(0)); 1203e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedFixed64(1)); 1204e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedFixed64(); 1205e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedFixed64Count()); 1206e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedFixed64() 1207e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedFixed64(456); 1208e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedFixed64Count()); 1209e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedFixed64(0)); 1210e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 1211e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedFixed64Count()); 1212e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1213e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 1214e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1215e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedFixed64(123); 1216e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedFixed64Count()); 1217e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1218e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1219e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1220e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 10); 1221e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1222e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1223e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedFixed64Count()); 1224e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedFixed64(0)); 1225e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1226e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1227e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1228e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedFixed64(123) 1229e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedFixed64(456); 1230e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedFixed64Count()); 1231e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1232e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1233e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1234e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 20); 1235e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1236e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1237e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 1238e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedFixed64Count()); 1239e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedFixed64(0)); 1240e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, newMsg.getRepeatedFixed64(1)); 1241e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 1242e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1243e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedSfixed32() throws Exception { 1244e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 1245e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedSfixed32Count()); 1246e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedSfixed32(123); 1247e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedSfixed32Count()); 1248e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedSfixed32(0)); 1249e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedSfixed32(456); 1250e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedSfixed32Count()); 1251e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedSfixed32(0)); 1252e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedSfixed32(1)); 1253e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedSfixed32(0, 789); 1254e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedSfixed32Count()); 1255e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(789, msg.getRepeatedSfixed32(0)); 1256e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedSfixed32(1)); 1257e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedSfixed32(); 1258e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedSfixed32Count()); 1259e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedSfixed32() 1260e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedSfixed32(456); 1261e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedSfixed32Count()); 1262e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedSfixed32(0)); 1263e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 1264e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedSfixed32Count()); 1265e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1266e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 1267e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1268e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedSfixed32(123); 1269e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedSfixed32Count()); 1270e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1271e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1272e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1273e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 6); 1274e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1275e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1276e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedSfixed32Count()); 1277e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedSfixed32(0)); 1278e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1279e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1280e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1281e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedSfixed32(123) 1282e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedSfixed32(456); 1283e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedSfixed32Count()); 1284e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1285e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1286e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1287e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 12); 1288e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1289e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1290e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 1291e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedSfixed32Count()); 1292e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedSfixed32(0)); 1293e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, newMsg.getRepeatedSfixed32(1)); 1294e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 1295e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1296e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedSfixed64() throws Exception { 1297e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 1298e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedSfixed64Count()); 1299e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedSfixed64(123); 1300e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedSfixed64Count()); 1301e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedSfixed64(0)); 1302e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedSfixed64(456); 1303e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedSfixed64Count()); 1304e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, msg.getRepeatedSfixed64(0)); 1305e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedSfixed64(1)); 1306e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedSfixed64(0, 789); 1307e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedSfixed64Count()); 1308e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(789, msg.getRepeatedSfixed64(0)); 1309e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedSfixed64(1)); 1310e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedSfixed64(); 1311e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedSfixed64Count()); 1312e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedSfixed64() 1313e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedSfixed64(456); 1314e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedSfixed64Count()); 1315e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, msg.getRepeatedSfixed64(0)); 1316e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 1317e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedSfixed64Count()); 1318e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1319e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 1320e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1321e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedSfixed64(123); 1322e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedSfixed64Count()); 1323e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1324e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1325e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1326e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 10); 1327e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1328e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1329e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedSfixed64Count()); 1330e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedSfixed64(0)); 1331e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1332e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1333e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1334e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedSfixed64(123) 1335e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedSfixed64(456); 1336e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedSfixed64Count()); 1337e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1338e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1339e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1340e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 20); 1341e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1342e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1343e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 1344e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedSfixed64Count()); 1345e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(123, newMsg.getRepeatedSfixed64(0)); 1346e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(456, newMsg.getRepeatedSfixed64(1)); 1347e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 1348e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1349e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedFloat() throws Exception { 1350e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 1351e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedFloatCount()); 1352e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedFloat(123f); 1353e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedFloatCount()); 1354e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(123f == msg.getRepeatedFloat(0)); 1355e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedFloat(456f); 1356e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedFloatCount()); 1357e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(123f == msg.getRepeatedFloat(0)); 1358e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(456f == msg.getRepeatedFloat(1)); 1359e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedFloat(0, 789f); 1360e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedFloatCount()); 1361e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(789f == msg.getRepeatedFloat(0)); 1362e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(456f == msg.getRepeatedFloat(1)); 1363e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedFloat(); 1364e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedFloatCount()); 1365e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedFloat() 1366e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedFloat(456f); 1367e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedFloatCount()); 1368e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(456f == msg.getRepeatedFloat(0)); 1369e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 1370e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedFloatCount()); 1371e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1372e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 1373e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1374e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedFloat(123f); 1375e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedFloatCount()); 1376e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1377e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1378e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1379e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 6); 1380e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1381e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1382e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedFloatCount()); 1383e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(123f == newMsg.getRepeatedFloat(0)); 1384e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1385e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1386e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1387e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedFloat(123f) 1388e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedFloat(456f); 1389e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedFloatCount()); 1390e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1391e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1392e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1393e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 12); 1394e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1395e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1396e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 1397e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedFloatCount()); 1398e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(123f == newMsg.getRepeatedFloat(0)); 1399e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(456f == newMsg.getRepeatedFloat(1)); 1400e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 1401e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1402e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedDouble() throws Exception { 1403e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 1404e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedDoubleCount()); 1405e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedDouble(123.0); 1406e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedDoubleCount()); 1407e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(123.0 == msg.getRepeatedDouble(0)); 1408e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedDouble(456.0); 1409e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedDoubleCount()); 1410e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(123.0 == msg.getRepeatedDouble(0)); 1411e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(456.0 == msg.getRepeatedDouble(1)); 1412e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedDouble(0, 789.0); 1413e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedDoubleCount()); 1414e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(789.0 == msg.getRepeatedDouble(0)); 1415e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(456.0 == msg.getRepeatedDouble(1)); 1416e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedDouble(); 1417e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedDoubleCount()); 1418e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedDouble() 1419e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedDouble(456.0); 1420e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedDoubleCount()); 1421e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(456.0 == msg.getRepeatedDouble(0)); 1422e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 1423e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedDoubleCount()); 1424e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1425e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 1426e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1427e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedDouble(123.0); 1428e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedDoubleCount()); 1429e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1430e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1431e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1432e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 10); 1433e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1434e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1435e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedDoubleCount()); 1436e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(123.0 == newMsg.getRepeatedDouble(0)); 1437e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1438e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1439e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1440e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedDouble(123.0) 1441e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedDouble(456.0); 1442e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedDoubleCount()); 1443e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1444e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1445e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1446e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 20); 1447e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1448e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1449e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 1450e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedDoubleCount()); 1451e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(123.0 == newMsg.getRepeatedDouble(0)); 1452e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(456.0 == newMsg.getRepeatedDouble(1)); 1453e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 1454e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1455e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedBool() throws Exception { 1456e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 1457e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedBoolCount()); 1458e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedBool(true); 1459e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedBoolCount()); 1460e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(true, msg.getRepeatedBool(0)); 1461e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedBool(false); 1462e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedBoolCount()); 1463e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(true, msg.getRepeatedBool(0)); 1464e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(false, msg.getRepeatedBool(1)); 1465e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedBool(0, false); 1466e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedBoolCount()); 1467e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(false, msg.getRepeatedBool(0)); 1468e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(false, msg.getRepeatedBool(1)); 1469e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedBool(); 1470e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedBoolCount()); 1471e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedBool() 1472e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedBool(true); 1473e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedBoolCount()); 1474e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(true, msg.getRepeatedBool(0)); 1475e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 1476e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedBoolCount()); 1477e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1478e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 1479e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1480e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedBool(false); 1481e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedBoolCount()); 1482e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1483e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1484e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1485e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 3); 1486e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1487e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1488e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedBoolCount()); 1489e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(false, newMsg.getRepeatedBool(0)); 1490e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1491e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1492e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1493e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedBool(true) 1494e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedBool(false); 1495e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedBoolCount()); 1496e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1497e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1498e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1499e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 6); 1500e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1501e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1502e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 1503e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedBoolCount()); 1504e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(true, newMsg.getRepeatedBool(0)); 1505e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(false, newMsg.getRepeatedBool(1)); 1506e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 1507e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1508e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedString() throws Exception { 1509e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 1510e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedStringCount()); 1511e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedString("hello"); 1512e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedStringCount()); 1513e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", msg.getRepeatedString(0)); 1514e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedString("bye"); 1515e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedStringCount()); 1516e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", msg.getRepeatedString(0)); 1517e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("bye", msg.getRepeatedString(1)); 1518e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedString(0, "boo"); 1519e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedStringCount()); 1520e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("boo", msg.getRepeatedString(0)); 1521e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("bye", msg.getRepeatedString(1)); 1522e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedString(); 1523e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedStringCount()); 1524e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedString() 1525e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedString("hello"); 1526e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedStringCount()); 1527e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", msg.getRepeatedString(0)); 1528e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 1529e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedStringCount()); 1530e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1531e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry and an empty string 1532e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1533e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedString(""); 1534e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedStringCount()); 1535e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1536e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1537e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1538e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 3); 1539e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1540e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1541e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedStringCount()); 1542e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("", newMsg.getRepeatedString(0)); 1543e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1544e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1545e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1546e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedString("hello") 1547e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedString("world"); 1548e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedStringCount()); 1549e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1550e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1551e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1552e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 16); 1553e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1554e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1555e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 1556e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedStringCount()); 1557e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", newMsg.getRepeatedString(0)); 1558e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("world", newMsg.getRepeatedString(1)); 1559e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 1560e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1561e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedBytes() throws Exception { 1562e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 1563e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedBytesCount()); 1564e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedBytes(ByteStringMicro.copyFromUtf8("hello")); 1565e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedBytesCount()); 1566e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", msg.getRepeatedBytes(0).toStringUtf8()); 1567e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedBytes(ByteStringMicro.copyFromUtf8("bye")); 1568e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedBytesCount()); 1569e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", msg.getRepeatedBytes(0).toStringUtf8()); 1570e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("bye", msg.getRepeatedBytes(1).toStringUtf8()); 1571e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedBytes(0, ByteStringMicro.copyFromUtf8("boo")); 1572e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedBytesCount()); 1573e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("boo", msg.getRepeatedBytes(0).toStringUtf8()); 1574e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("bye", msg.getRepeatedBytes(1).toStringUtf8()); 1575e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedBytes(); 1576e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedBytesCount()); 1577e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedBytes() 1578e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedBytes(ByteStringMicro.copyFromUtf8("hello")); 1579e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedBytesCount()); 1580e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", msg.getRepeatedBytes(0).toStringUtf8()); 1581e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 1582e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedBytesCount()); 1583e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1584e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry and an empty byte array can be serialized 1585e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1586e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedBytes(ByteStringMicro.copyFromUtf8("")); 1587e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedBytesCount()); 1588e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("", msg.getRepeatedBytes(0).toStringUtf8()); 1589e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1590e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1591e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1592e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 3); 1593e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1594e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1595e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedBytesCount()); 1596e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("", newMsg.getRepeatedBytes(0).toStringUtf8()); 1597e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1598e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1599e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1600e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedBytes(ByteStringMicro.copyFromUtf8("hello")) 1601e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedBytes(ByteStringMicro.copyFromUtf8("world")); 1602e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedBytesCount()); 1603e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1604e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1605e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1606e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 16); 1607e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1608e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1609e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 1610e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedBytesCount()); 1611e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", newMsg.getRepeatedBytes(0).toStringUtf8()); 1612e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("world", newMsg.getRepeatedBytes(1).toStringUtf8()); 1613e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 1614e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1615e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedGroup() throws Exception { 1616e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 1617e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro.RepeatedGroup group0 = 1618e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville new TestAllTypesMicro.RepeatedGroup().setA(0); 1619e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro.RepeatedGroup group1 = 1620e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville new TestAllTypesMicro.RepeatedGroup().setA(1); 1621e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro.RepeatedGroup group2 = 1622e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville new TestAllTypesMicro.RepeatedGroup().setA(2); 1623e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1624e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedGroup(group0); 1625e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedGroupCount()); 1626e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedGroup(0).getA()); 1627e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedGroup(group1); 1628e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedGroupCount()); 1629e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedGroup(0).getA()); 1630e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedGroup(1).getA()); 1631e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedGroup(0, group2); 1632e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedGroupCount()); 1633e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedGroup(0).getA()); 1634e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedGroup(1).getA()); 1635e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedGroup(); 1636e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedGroupCount()); 1637e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedGroup() 1638e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedGroup(group1); 1639e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedGroupCount()); 1640e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedGroup(0).getA()); 1641e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 1642e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedGroupCount()); 1643e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1644e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 1645e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1646e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedGroup(group0); 1647e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedGroupCount()); 1648e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1649e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1650e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1651e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 7); 1652e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1653e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1654e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedGroupCount()); 1655e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, newMsg.getRepeatedGroup(0).getA()); 1656e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1657e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1658e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1659e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedGroup(group0) 1660e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedGroup(group1); 1661e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedGroupCount()); 1662e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1663e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1664e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1665e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 14); 1666e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1667e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1668e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 1669e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedGroupCount()); 1670e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, newMsg.getRepeatedGroup(0).getA()); 1671e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedGroup(1).getA()); 1672e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 1673e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1674e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1675e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedNestedMessage() throws Exception { 1676e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 1677e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro.NestedMessage nestedMsg0 = 1678e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville new TestAllTypesMicro.NestedMessage().setBb(0); 1679e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro.NestedMessage nestedMsg1 = 1680e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville new TestAllTypesMicro.NestedMessage().setBb(1); 1681e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro.NestedMessage nestedMsg2 = 1682e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville new TestAllTypesMicro.NestedMessage().setBb(2); 1683e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1684e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedNestedMessage(nestedMsg0); 1685e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedNestedMessageCount()); 1686e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedNestedMessage(0).getBb()); 1687e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedNestedMessage(nestedMsg1); 1688e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedNestedMessageCount()); 1689e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedNestedMessage(0).getBb()); 1690e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedNestedMessage(1).getBb()); 1691e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedNestedMessage(0, nestedMsg2); 1692e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedNestedMessageCount()); 1693e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedNestedMessage(0).getBb()); 1694e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedNestedMessage(1).getBb()); 1695e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedNestedMessage(); 1696e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedNestedMessageCount()); 1697e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedNestedMessage() 1698e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedNestedMessage(nestedMsg1); 1699e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedNestedMessageCount()); 1700e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedNestedMessage(0).getBb()); 1701e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 1702e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedNestedMessageCount()); 1703e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1704e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 1705e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1706e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedNestedMessage(nestedMsg0); 1707e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedNestedMessageCount()); 1708e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1709e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1710e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1711e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 5); 1712e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1713e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1714e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedNestedMessageCount()); 1715e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, newMsg.getRepeatedNestedMessage(0).getBb()); 1716e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1717e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1718e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1719e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedNestedMessage(nestedMsg0) 1720e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedNestedMessage(nestedMsg1); 1721e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedNestedMessageCount()); 1722e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1723e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1724e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1725e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 10); 1726e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1727e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1728e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 1729e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedNestedMessageCount()); 1730e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, newMsg.getRepeatedNestedMessage(0).getBb()); 1731e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedNestedMessage(1).getBb()); 1732e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 1733e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1734e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedForeignMessage() throws Exception { 1735e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 1736e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville MicroOuterClass.ForeignMessageMicro foreignMsg0 = 1737e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville new MicroOuterClass.ForeignMessageMicro().setC(0); 1738e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville MicroOuterClass.ForeignMessageMicro foreignMsg1 = 1739e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville new MicroOuterClass.ForeignMessageMicro().setC(1); 1740e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville MicroOuterClass.ForeignMessageMicro foreignMsg2 = 1741e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville new MicroOuterClass.ForeignMessageMicro().setC(2); 1742e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1743e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedForeignMessage(foreignMsg0); 1744e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedForeignMessageCount()); 1745e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedForeignMessage(0).getC()); 1746e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedForeignMessage(foreignMsg1); 1747e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedForeignMessageCount()); 1748e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedForeignMessage(0).getC()); 1749e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedForeignMessage(1).getC()); 1750e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedForeignMessage(0, foreignMsg2); 1751e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedForeignMessageCount()); 1752e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedForeignMessage(0).getC()); 1753e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedForeignMessage(1).getC()); 1754e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedForeignMessage(); 1755e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedForeignMessageCount()); 1756e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedForeignMessage() 1757e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedForeignMessage(foreignMsg1); 1758e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedForeignMessageCount()); 1759e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedForeignMessage(0).getC()); 1760e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 1761e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedForeignMessageCount()); 1762e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1763e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 1764e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1765e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedForeignMessage(foreignMsg0); 1766e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedForeignMessageCount()); 1767e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1768e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1769e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1770e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 5); 1771e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1772e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1773e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedForeignMessageCount()); 1774e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, newMsg.getRepeatedForeignMessage(0).getC()); 1775e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1776e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1777e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1778e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedForeignMessage(foreignMsg0) 1779e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedForeignMessage(foreignMsg1); 1780e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedForeignMessageCount()); 1781e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1782e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1783e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1784e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 10); 1785e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1786e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1787e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 1788e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedForeignMessageCount()); 1789e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, newMsg.getRepeatedForeignMessage(0).getC()); 1790e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedForeignMessage(1).getC()); 1791e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 1792e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1793e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedImportMessage() throws Exception { 1794e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 1795e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville UnittestImportMicro.ImportMessageMicro importMsg0 = 1796e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville new UnittestImportMicro.ImportMessageMicro().setD(0); 1797e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville UnittestImportMicro.ImportMessageMicro importMsg1 = 1798e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville new UnittestImportMicro.ImportMessageMicro().setD(1); 1799e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville UnittestImportMicro.ImportMessageMicro importMsg2 = 1800e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville new UnittestImportMicro.ImportMessageMicro().setD(2); 1801e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1802e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedImportMessage(importMsg0); 1803e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedImportMessageCount()); 1804e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedImportMessage(0).getD()); 1805e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedImportMessage(importMsg1); 1806e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedImportMessageCount()); 1807e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedImportMessage(0).getD()); 1808e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedImportMessage(1).getD()); 1809e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedImportMessage(0, importMsg2); 1810e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedImportMessageCount()); 1811e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedImportMessage(0).getD()); 1812e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedImportMessage(1).getD()); 1813e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedImportMessage(); 1814e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedImportMessageCount()); 1815e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedImportMessage() 1816e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedImportMessage(importMsg1); 1817e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedImportMessageCount()); 1818e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedImportMessage(0).getD()); 1819e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 1820e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedImportMessageCount()); 1821e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1822e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 1823e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1824e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedImportMessage(importMsg0); 1825e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedImportMessageCount()); 1826e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1827e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1828e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1829e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 5); 1830e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1831e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1832e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedImportMessageCount()); 1833e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, newMsg.getRepeatedImportMessage(0).getD()); 1834e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1835e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1836e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1837e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedImportMessage(importMsg0) 1838e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedImportMessage(importMsg1); 1839e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedImportMessageCount()); 1840e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1841e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1842e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1843e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 10); 1844e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1845e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1846e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 1847e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedImportMessageCount()); 1848e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, newMsg.getRepeatedImportMessage(0).getD()); 1849e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedImportMessage(1).getD()); 1850e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 1851e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1852e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedNestedEnum() throws Exception { 1853e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 1854e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedNestedEnum(TestAllTypesMicro.FOO); 1855e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedNestedEnumCount()); 1856e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(TestAllTypesMicro.FOO, msg.getRepeatedNestedEnum(0)); 1857e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedNestedEnum(TestAllTypesMicro.BAR); 1858e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedNestedEnumCount()); 1859e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(TestAllTypesMicro.FOO, msg.getRepeatedNestedEnum(0)); 1860e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(TestAllTypesMicro.BAR, msg.getRepeatedNestedEnum(1)); 1861e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedNestedEnum(0, TestAllTypesMicro.BAZ); 1862e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedNestedEnumCount()); 1863e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(TestAllTypesMicro.BAZ, msg.getRepeatedNestedEnum(0)); 1864e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(TestAllTypesMicro.BAR, msg.getRepeatedNestedEnum(1)); 1865e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedNestedEnum(); 1866e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedNestedEnumCount()); 1867e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedNestedEnum() 1868e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedNestedEnum(TestAllTypesMicro.BAR); 1869e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedNestedEnumCount()); 1870e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(TestAllTypesMicro.BAR, msg.getRepeatedNestedEnum(0)); 1871e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 1872e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedNestedEnumCount()); 1873e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1874e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 1875e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1876e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedNestedEnum(TestAllTypesMicro.FOO); 1877e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1878e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1879e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1880e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 3); 1881e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1882e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1883e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedNestedEnumCount()); 1884e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(TestAllTypesMicro.FOO, msg.getRepeatedNestedEnum(0)); 1885e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1886e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1887e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1888e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedNestedEnum(TestAllTypesMicro.FOO) 1889e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedNestedEnum(TestAllTypesMicro.BAR); 1890e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedNestedEnumCount()); 1891e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1892e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1893e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1894e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 6); 1895e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1896e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1897e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 1898e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedNestedEnumCount()); 1899e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(TestAllTypesMicro.FOO, msg.getRepeatedNestedEnum(0)); 1900e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(TestAllTypesMicro.BAR, msg.getRepeatedNestedEnum(1)); 1901e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 1902e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1903e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedForeignEnum() throws Exception { 1904e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 1905e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedForeignEnum(MicroOuterClass.FOREIGN_MICRO_FOO); 1906e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedForeignEnumCount()); 1907e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(MicroOuterClass.FOREIGN_MICRO_FOO, msg.getRepeatedForeignEnum(0)); 1908e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedForeignEnum(MicroOuterClass.FOREIGN_MICRO_BAR); 1909e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedForeignEnumCount()); 1910e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(MicroOuterClass.FOREIGN_MICRO_FOO, msg.getRepeatedForeignEnum(0)); 1911e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(MicroOuterClass.FOREIGN_MICRO_BAR, msg.getRepeatedForeignEnum(1)); 1912e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedForeignEnum(0, MicroOuterClass.FOREIGN_MICRO_BAZ); 1913e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedForeignEnumCount()); 1914e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(MicroOuterClass.FOREIGN_MICRO_BAZ, msg.getRepeatedForeignEnum(0)); 1915e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(MicroOuterClass.FOREIGN_MICRO_BAR, msg.getRepeatedForeignEnum(1)); 1916e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedForeignEnum(); 1917e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedForeignEnumCount()); 1918e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedForeignEnum() 1919e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedForeignEnum(MicroOuterClass.FOREIGN_MICRO_BAR); 1920e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedForeignEnumCount()); 1921e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(MicroOuterClass.FOREIGN_MICRO_BAR, msg.getRepeatedForeignEnum(0)); 1922e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 1923e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedForeignEnumCount()); 1924e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1925e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 1926e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1927e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedForeignEnum(MicroOuterClass.FOREIGN_MICRO_FOO); 1928e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1929e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1930e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1931e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 3); 1932e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1933e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1934e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedForeignEnumCount()); 1935e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(MicroOuterClass.FOREIGN_MICRO_FOO, msg.getRepeatedForeignEnum(0)); 1936e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1937e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1938e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1939e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedForeignEnum(MicroOuterClass.FOREIGN_MICRO_FOO) 1940e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedForeignEnum(MicroOuterClass.FOREIGN_MICRO_BAR); 1941e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedForeignEnumCount()); 1942e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1943e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1944e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1945e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 6); 1946e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1947e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1948e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 1949e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedForeignEnumCount()); 1950e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(MicroOuterClass.FOREIGN_MICRO_FOO, msg.getRepeatedForeignEnum(0)); 1951e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(MicroOuterClass.FOREIGN_MICRO_BAR, msg.getRepeatedForeignEnum(1)); 1952e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 1953e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1954e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedImportEnum() throws Exception { 1955e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 1956e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedImportEnum(UnittestImportMicro.IMPORT_MICRO_FOO); 1957e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedImportEnumCount()); 1958e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(UnittestImportMicro.IMPORT_MICRO_FOO, msg.getRepeatedImportEnum(0)); 1959e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedImportEnum(UnittestImportMicro.IMPORT_MICRO_BAR); 1960e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedImportEnumCount()); 1961e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(UnittestImportMicro.IMPORT_MICRO_FOO, msg.getRepeatedImportEnum(0)); 1962e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(UnittestImportMicro.IMPORT_MICRO_BAR, msg.getRepeatedImportEnum(1)); 1963e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedImportEnum(0, UnittestImportMicro.IMPORT_MICRO_BAZ); 1964e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedImportEnumCount()); 1965e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(UnittestImportMicro.IMPORT_MICRO_BAZ, msg.getRepeatedImportEnum(0)); 1966e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(UnittestImportMicro.IMPORT_MICRO_BAR, msg.getRepeatedImportEnum(1)); 1967e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedImportEnum(); 1968e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedImportEnumCount()); 1969e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedImportEnum() 1970e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedImportEnum(UnittestImportMicro.IMPORT_MICRO_BAR); 1971e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedImportEnumCount()); 1972e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(UnittestImportMicro.IMPORT_MICRO_BAR, msg.getRepeatedImportEnum(0)); 1973e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 1974e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedImportEnumCount()); 1975e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1976e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry 1977e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1978e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedImportEnum(UnittestImportMicro.IMPORT_MICRO_FOO); 1979e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 1980e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 1981e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1982e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 3); 1983e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1984e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 1985e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedImportEnumCount()); 1986e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(UnittestImportMicro.IMPORT_MICRO_FOO, msg.getRepeatedImportEnum(0)); 1987e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1988e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 1989e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 1990e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedImportEnum(UnittestImportMicro.IMPORT_MICRO_FOO) 1991e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedImportEnum(UnittestImportMicro.IMPORT_MICRO_BAR); 1992e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedImportEnumCount()); 1993e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 1994e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 1995e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 1996e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 6); 1997e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 1998e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 1999e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 2000e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedImportEnumCount()); 2001e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(UnittestImportMicro.IMPORT_MICRO_FOO, msg.getRepeatedImportEnum(0)); 2002e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(UnittestImportMicro.IMPORT_MICRO_BAR, msg.getRepeatedImportEnum(1)); 2003e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 2004e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 2005e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedStringPiece() throws Exception { 2006e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 2007e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedStringPieceCount()); 2008e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedStringPiece("hello"); 2009e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedStringPieceCount()); 2010e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", msg.getRepeatedStringPiece(0)); 2011e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedStringPiece("bye"); 2012e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedStringPieceCount()); 2013e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", msg.getRepeatedStringPiece(0)); 2014e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("bye", msg.getRepeatedStringPiece(1)); 2015e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedStringPiece(0, "boo"); 2016e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedStringPieceCount()); 2017e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("boo", msg.getRepeatedStringPiece(0)); 2018e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("bye", msg.getRepeatedStringPiece(1)); 2019e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedStringPiece(); 2020e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedStringPieceCount()); 2021e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedStringPiece() 2022e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedStringPiece("hello"); 2023e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedStringPieceCount()); 2024e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", msg.getRepeatedStringPiece(0)); 2025e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 2026e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedStringPieceCount()); 2027e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 2028e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry and an empty string 2029e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 2030e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedStringPiece(""); 2031e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedStringPieceCount()); 2032e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 2033e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 2034e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 2035e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 3); 2036e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 2037e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 2038e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedStringPieceCount()); 2039e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("", newMsg.getRepeatedStringPiece(0)); 2040e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 2041e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 2042e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 2043e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedStringPiece("hello") 2044e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedStringPiece("world"); 2045e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedStringPieceCount()); 2046e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 2047e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 2048e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 2049e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 16); 2050e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 2051e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 2052e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 2053e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedStringPieceCount()); 2054e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", newMsg.getRepeatedStringPiece(0)); 2055e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("world", newMsg.getRepeatedStringPiece(1)); 2056e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 2057e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 2058e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroRepeatedCord() throws Exception { 2059e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 2060e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedCordCount()); 2061e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedCord("hello"); 2062e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedCordCount()); 2063e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", msg.getRepeatedCord(0)); 2064e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.addRepeatedCord("bye"); 2065e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedCordCount()); 2066e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", msg.getRepeatedCord(0)); 2067e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("bye", msg.getRepeatedCord(1)); 2068e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.setRepeatedCord(0, "boo"); 2069e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedCordCount()); 2070e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("boo", msg.getRepeatedCord(0)); 2071e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("bye", msg.getRepeatedCord(1)); 2072e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedCord(); 2073e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedCordCount()); 2074e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clearRepeatedCord() 2075e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedCord("hello"); 2076e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedCordCount()); 2077e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", msg.getRepeatedCord(0)); 2078e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear(); 2079e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(0, msg.getRepeatedCordCount()); 2080e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 2081e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 1 entry and an empty string 2082e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 2083e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedCord(""); 2084e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, msg.getRepeatedCordCount()); 2085e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville byte [] result = msg.toByteArray(); 2086e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville int msgSerializedSize = msg.getSerializedSize(); 2087e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 2088e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 3); 2089e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 2090e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro newMsg = TestAllTypesMicro.parseFrom(result); 2091e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(1, newMsg.getRepeatedCordCount()); 2092e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("", newMsg.getRepeatedCord(0)); 2093e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 2094e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville // Test 2 entries 2095e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msg.clear() 2096e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedCord("hello") 2097e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville .addRepeatedCord("world"); 2098e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, msg.getRepeatedCordCount()); 2099e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville result = msg.toByteArray(); 2100e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville msgSerializedSize = msg.getSerializedSize(); 2101e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville //System.out.printf("mss=%d result.length=%d\n", msgSerializedSize, result.length); 2102e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(msgSerializedSize == 16); 2103e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(result.length, msgSerializedSize); 2104e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 2105e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville newMsg = TestAllTypesMicro.parseFrom(result); 2106e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(2, newMsg.getRepeatedCordCount()); 2107e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", newMsg.getRepeatedCord(0)); 2108e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("world", newMsg.getRepeatedCord(1)); 2109e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 2110e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville 21118170787391efcb6cc6a8babc1cce35d5b1aff420Max Cai /** 2112624c448fbef20a1a2fad2289f622b468c25763d1Max Cai * Tests that code generation correctly wraps a single message into its outer 2113624c448fbef20a1a2fad2289f622b468c25763d1Max Cai * class. The class {@code SingleMessageMicro} is imported from the outer 2114624c448fbef20a1a2fad2289f622b468c25763d1Max Cai * class {@code UnittestSingleMicro}, whose name is implicit. Any error would 2115624c448fbef20a1a2fad2289f622b468c25763d1Max Cai * cause this method to fail compilation. 2116624c448fbef20a1a2fad2289f622b468c25763d1Max Cai */ 2117624c448fbef20a1a2fad2289f622b468c25763d1Max Cai public void testMicroSingle() throws Exception { 2118624c448fbef20a1a2fad2289f622b468c25763d1Max Cai SingleMessageMicro msg = new SingleMessageMicro(); 2119624c448fbef20a1a2fad2289f622b468c25763d1Max Cai } 2120624c448fbef20a1a2fad2289f622b468c25763d1Max Cai 2121624c448fbef20a1a2fad2289f622b468c25763d1Max Cai /** 2122624c448fbef20a1a2fad2289f622b468c25763d1Max Cai * Tests that code generation correctly skips generating the outer class if 2123624c448fbef20a1a2fad2289f622b468c25763d1Max Cai * unnecessary, letting a file-scope entity have the same name. The class 2124624c448fbef20a1a2fad2289f622b468c25763d1Max Cai * {@code MultipleNameClashMicro} shares the same name with the file's outer 2125624c448fbef20a1a2fad2289f622b468c25763d1Max Cai * class defined explicitly, but the file contains no other entities and has 2126624c448fbef20a1a2fad2289f622b468c25763d1Max Cai * java_multiple_files set. Any error would cause this method to fail 2127624c448fbef20a1a2fad2289f622b468c25763d1Max Cai * compilation. 2128624c448fbef20a1a2fad2289f622b468c25763d1Max Cai */ 2129624c448fbef20a1a2fad2289f622b468c25763d1Max Cai public void testMicroMultipleNameClash() throws Exception { 2130624c448fbef20a1a2fad2289f622b468c25763d1Max Cai MultipleNameClashMicro msg = new MultipleNameClashMicro(); 2131624c448fbef20a1a2fad2289f622b468c25763d1Max Cai msg.setField(0); 2132624c448fbef20a1a2fad2289f622b468c25763d1Max Cai } 2133624c448fbef20a1a2fad2289f622b468c25763d1Max Cai 2134624c448fbef20a1a2fad2289f622b468c25763d1Max Cai /** 2135624c448fbef20a1a2fad2289f622b468c25763d1Max Cai * Tests that code generation correctly handles enums in different scopes in 2136624c448fbef20a1a2fad2289f622b468c25763d1Max Cai * a source file with the option java_multiple_files set to true. Any error 2137624c448fbef20a1a2fad2289f622b468c25763d1Max Cai * would cause this method to fail compilation. 2138624c448fbef20a1a2fad2289f622b468c25763d1Max Cai */ 2139624c448fbef20a1a2fad2289f622b468c25763d1Max Cai public void testMicroMultipleEnumScoping() throws Exception { 2140624c448fbef20a1a2fad2289f622b468c25763d1Max Cai FileScopeEnumRefMicro msg1 = new FileScopeEnumRefMicro(); 2141624c448fbef20a1a2fad2289f622b468c25763d1Max Cai msg1.setEnumField(UnittestMultipleMicro.ONE); 2142624c448fbef20a1a2fad2289f622b468c25763d1Max Cai MessageScopeEnumRefMicro msg2 = new MessageScopeEnumRefMicro(); 2143624c448fbef20a1a2fad2289f622b468c25763d1Max Cai msg2.setEnumField(MessageScopeEnumRefMicro.TWO); 2144624c448fbef20a1a2fad2289f622b468c25763d1Max Cai } 2145624c448fbef20a1a2fad2289f622b468c25763d1Max Cai 2146624c448fbef20a1a2fad2289f622b468c25763d1Max Cai /** 21478170787391efcb6cc6a8babc1cce35d5b1aff420Max Cai * Tests that code generation with mixed values of the java_multiple_files 21488170787391efcb6cc6a8babc1cce35d5b1aff420Max Cai * options between the main source file and the imported source files would 21498170787391efcb6cc6a8babc1cce35d5b1aff420Max Cai * generate correct references. Any error would cause this method to fail 21508170787391efcb6cc6a8babc1cce35d5b1aff420Max Cai * compilation. 21518170787391efcb6cc6a8babc1cce35d5b1aff420Max Cai */ 21528170787391efcb6cc6a8babc1cce35d5b1aff420Max Cai public void testMicroMultipleImportingNonMultiple() throws Exception { 21538170787391efcb6cc6a8babc1cce35d5b1aff420Max Cai UnittestImportMicro.ImportMessageMicro importMsg = 21548170787391efcb6cc6a8babc1cce35d5b1aff420Max Cai new UnittestImportMicro.ImportMessageMicro(); 21558170787391efcb6cc6a8babc1cce35d5b1aff420Max Cai MultipleImportingNonMultipleMicro1 micro1 = new MultipleImportingNonMultipleMicro1(); 21568170787391efcb6cc6a8babc1cce35d5b1aff420Max Cai micro1.setField(importMsg); 21578170787391efcb6cc6a8babc1cce35d5b1aff420Max Cai MultipleImportingNonMultipleMicro2 micro2 = new MultipleImportingNonMultipleMicro2(); 21588170787391efcb6cc6a8babc1cce35d5b1aff420Max Cai micro2.setMicro1(micro1); 21598170787391efcb6cc6a8babc1cce35d5b1aff420Max Cai } 21608170787391efcb6cc6a8babc1cce35d5b1aff420Max Cai 2161e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville public void testMicroDefaults() throws Exception { 2162e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville TestAllTypesMicro msg = new TestAllTypesMicro(); 2163e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultInt32()); 2164e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(41, msg.getDefaultInt32()); 2165e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultInt64()); 2166e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(42, msg.getDefaultInt64()); 2167e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultUint32()); 2168e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(43, msg.getDefaultUint32()); 2169e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultUint64()); 2170e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(44, msg.getDefaultUint64()); 2171e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultSint32()); 2172e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(-45, msg.getDefaultSint32()); 2173e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultSint64()); 2174e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(46, msg.getDefaultSint64()); 2175e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultFixed32()); 2176e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(47, msg.getDefaultFixed32()); 2177e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultFixed64()); 2178e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(48, msg.getDefaultFixed64()); 2179e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultSfixed32()); 2180e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(49, msg.getDefaultSfixed32()); 2181e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultSfixed64()); 2182e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(-50, msg.getDefaultSfixed64()); 2183e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultFloat()); 2184e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(51.5f == msg.getDefaultFloat()); 2185e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultDouble()); 2186e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertTrue(52.0e3 == msg.getDefaultDouble()); 2187e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultBool()); 2188e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(true, msg.getDefaultBool()); 2189e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultString()); 2190e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("hello", msg.getDefaultString()); 2191e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultBytes()); 2192e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals("world", msg.getDefaultBytes().toStringUtf8()); 2193e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultNestedEnum()); 2194e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(TestAllTypesMicro.BAR, msg.getDefaultNestedEnum()); 2195e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultForeignEnum()); 2196e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(MicroOuterClass.FOREIGN_MICRO_BAR, msg.getDefaultForeignEnum()); 2197e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertFalse(msg.hasDefaultImportEnum()); 2198e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville assertEquals(UnittestImportMicro.IMPORT_MICRO_BAR, msg.getDefaultImportEnum()); 21990f2ca89132ab81441f7eb351c7a053a8c8d9d1c3Chris Smith assertFalse(msg.hasDefaultFloatInf()); 22000f2ca89132ab81441f7eb351c7a053a8c8d9d1c3Chris Smith assertEquals(Float.POSITIVE_INFINITY, msg.getDefaultFloatInf()); 22010f2ca89132ab81441f7eb351c7a053a8c8d9d1c3Chris Smith assertFalse(msg.hasDefaultFloatNegInf()); 22020f2ca89132ab81441f7eb351c7a053a8c8d9d1c3Chris Smith assertEquals(Float.NEGATIVE_INFINITY, msg.getDefaultFloatNegInf()); 22030f2ca89132ab81441f7eb351c7a053a8c8d9d1c3Chris Smith assertFalse(msg.hasDefaultFloatNan()); 22040f2ca89132ab81441f7eb351c7a053a8c8d9d1c3Chris Smith assertEquals(Float.NaN, msg.getDefaultFloatNan()); 22050f2ca89132ab81441f7eb351c7a053a8c8d9d1c3Chris Smith assertFalse(msg.hasDefaultDoubleInf()); 22060f2ca89132ab81441f7eb351c7a053a8c8d9d1c3Chris Smith assertEquals(Double.POSITIVE_INFINITY, msg.getDefaultDoubleInf()); 22070f2ca89132ab81441f7eb351c7a053a8c8d9d1c3Chris Smith assertFalse(msg.hasDefaultDoubleNegInf()); 22080f2ca89132ab81441f7eb351c7a053a8c8d9d1c3Chris Smith assertEquals(Double.NEGATIVE_INFINITY, msg.getDefaultDoubleNegInf()); 22090f2ca89132ab81441f7eb351c7a053a8c8d9d1c3Chris Smith assertFalse(msg.hasDefaultDoubleNan()); 22100f2ca89132ab81441f7eb351c7a053a8c8d9d1c3Chris Smith assertEquals(Double.NaN, msg.getDefaultDoubleNan()); 2211e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville } 22128a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville 22138a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville /** 22148a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville * Test that a bug in skipRawBytes() has been fixed: if the skip skips 22158a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville * exactly up to a limit, this should not break things. 22168a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville */ 22178a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville public void testSkipRawBytesBug() throws Exception { 22188a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville byte[] rawBytes = new byte[] { 1, 2 }; 22198a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville CodedInputStreamMicro input = CodedInputStreamMicro.newInstance(rawBytes); 22208a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville 22218a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville int limit = input.pushLimit(1); 22228a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville input.skipRawBytes(1); 22238a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville input.popLimit(limit); 22248a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville assertEquals(2, input.readRawByte()); 22258a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville } 22268a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville 22278a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville /** 22288a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville * Test that a bug in skipRawBytes() has been fixed: if the skip skips 22298a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville * past the end of a buffer with a limit that has been set past the end of 22308a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville * that buffer, this should not break things. 22318a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville */ 22328a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville public void testSkipRawBytesPastEndOfBufferWithLimit() throws Exception { 22338a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville byte[] rawBytes = new byte[] { 1, 2, 3, 4, 5 }; 22348a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville CodedInputStreamMicro input = CodedInputStreamMicro.newInstance( 22358a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville new SmallBlockInputStream(rawBytes, 3)); 22368a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville 22378a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville int limit = input.pushLimit(4); 22388a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville // In order to expose the bug we need to read at least one byte to prime the 22398a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville // buffer inside the CodedInputStream. 22408a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville assertEquals(1, input.readRawByte()); 22418a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville // Skip to the end of the limit. 22428a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville input.skipRawBytes(3); 22438a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville assertTrue(input.isAtEnd()); 22448a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville input.popLimit(limit); 22458a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville assertEquals(5, input.readRawByte()); 22468a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville } 22478a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville 22488a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville /** 22498a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville * An InputStream which limits the number of bytes it reads at a time. 22508a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville * We use this to make sure that CodedInputStream doesn't screw up when 22518a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville * reading in small blocks. 22528a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville */ 22538a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville private static final class SmallBlockInputStream extends FilterInputStream { 22548a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville private final int blockSize; 22558a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville 22568a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville public SmallBlockInputStream(byte[] data, int blockSize) { 22578a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville this(new ByteArrayInputStream(data), blockSize); 22588a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville } 22598a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville 22608a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville public SmallBlockInputStream(InputStream in, int blockSize) { 22618a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville super(in); 22628a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville this.blockSize = blockSize; 22638a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville } 22648a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville 22658a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville public int read(byte[] b) throws IOException { 22668a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville return super.read(b, 0, Math.min(b.length, blockSize)); 22678a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville } 22688a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville 22698a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville public int read(byte[] b, int off, int len) throws IOException { 22708a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville return super.read(b, off, Math.min(len, blockSize)); 22718a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville } 22728a2f7578bb6289415f1d0a01c9cc96d283730480Wink Saville } 2273e2d542951c059563a3b7f74c257dac4f222d9dc5Wink Saville} 2274