1*1b3f573fSAndroid Build Coastguard Worker<?php 2*1b3f573fSAndroid Build Coastguard Worker 3*1b3f573fSAndroid Build Coastguard Workeruse Foo\TestMessage; 4*1b3f573fSAndroid Build Coastguard Workeruse Foo\TestEnum; 5*1b3f573fSAndroid Build Coastguard Workeruse Foo\TestMessage\Sub; 6*1b3f573fSAndroid Build Coastguard Worker 7*1b3f573fSAndroid Build Coastguard Workerclass TestBase extends \PHPUnit\Framework\TestCase 8*1b3f573fSAndroid Build Coastguard Worker{ 9*1b3f573fSAndroid Build Coastguard Worker 10*1b3f573fSAndroid Build Coastguard Worker public function setFields(TestMessage $m) 11*1b3f573fSAndroid Build Coastguard Worker { 12*1b3f573fSAndroid Build Coastguard Worker TestUtil::setTestMessage($m); 13*1b3f573fSAndroid Build Coastguard Worker } 14*1b3f573fSAndroid Build Coastguard Worker 15*1b3f573fSAndroid Build Coastguard Worker /** 16*1b3f573fSAndroid Build Coastguard Worker * Polyfill for phpunit6. 17*1b3f573fSAndroid Build Coastguard Worker */ 18*1b3f573fSAndroid Build Coastguard Worker static public function assertStringContains($needle, $haystack) 19*1b3f573fSAndroid Build Coastguard Worker { 20*1b3f573fSAndroid Build Coastguard Worker if (function_exists('PHPUnit\Framework\assertStringContainsString')) { 21*1b3f573fSAndroid Build Coastguard Worker parent::assertStringContainsString($needle, $haystack); 22*1b3f573fSAndroid Build Coastguard Worker } else { 23*1b3f573fSAndroid Build Coastguard Worker parent::assertContains($needle, $haystack); 24*1b3f573fSAndroid Build Coastguard Worker } 25*1b3f573fSAndroid Build Coastguard Worker } 26*1b3f573fSAndroid Build Coastguard Worker 27*1b3f573fSAndroid Build Coastguard Worker /** 28*1b3f573fSAndroid Build Coastguard Worker * Polyfill for phpunit6. 29*1b3f573fSAndroid Build Coastguard Worker */ 30*1b3f573fSAndroid Build Coastguard Worker static public function assertFloatEquals($expected, $actual, $delta) 31*1b3f573fSAndroid Build Coastguard Worker { 32*1b3f573fSAndroid Build Coastguard Worker if (function_exists('PHPUnit\Framework\assertEqualsWithDelta')) { 33*1b3f573fSAndroid Build Coastguard Worker parent::assertEqualsWithDelta($expected, $actual, $delta); 34*1b3f573fSAndroid Build Coastguard Worker } else { 35*1b3f573fSAndroid Build Coastguard Worker parent::assertEquals($expected, $actual, '', $delta); 36*1b3f573fSAndroid Build Coastguard Worker } 37*1b3f573fSAndroid Build Coastguard Worker } 38*1b3f573fSAndroid Build Coastguard Worker 39*1b3f573fSAndroid Build Coastguard Worker public function setFields2(TestMessage $m) 40*1b3f573fSAndroid Build Coastguard Worker { 41*1b3f573fSAndroid Build Coastguard Worker TestUtil::setTestMessage2($m); 42*1b3f573fSAndroid Build Coastguard Worker } 43*1b3f573fSAndroid Build Coastguard Worker 44*1b3f573fSAndroid Build Coastguard Worker public function expectFields(TestMessage $m) 45*1b3f573fSAndroid Build Coastguard Worker { 46*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(-42, $m->getOptionalInt32()); 47*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(42, $m->getOptionalUint32()); 48*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(-44, $m->getOptionalSint32()); 49*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(46, $m->getOptionalFixed32()); 50*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(-46, $m->getOptionalSfixed32()); 51*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(1.5, $m->getOptionalFloat()); 52*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(1.6, $m->getOptionalDouble()); 53*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(true, $m->getOptionalBool()); 54*1b3f573fSAndroid Build Coastguard Worker $this->assertSame('a', $m->getOptionalString()); 55*1b3f573fSAndroid Build Coastguard Worker $this->assertSame('bbbb', $m->getOptionalBytes()); 56*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(TestEnum::ONE, $m->getOptionalEnum()); 57*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(33, $m->getOptionalMessage()->getA()); 58*1b3f573fSAndroid Build Coastguard Worker if (PHP_INT_SIZE == 4) { 59*1b3f573fSAndroid Build Coastguard Worker $this->assertSame('-43', $m->getOptionalInt64()); 60*1b3f573fSAndroid Build Coastguard Worker $this->assertSame('43', $m->getOptionalUint64()); 61*1b3f573fSAndroid Build Coastguard Worker $this->assertSame('-45', $m->getOptionalSint64()); 62*1b3f573fSAndroid Build Coastguard Worker $this->assertSame('47', $m->getOptionalFixed64()); 63*1b3f573fSAndroid Build Coastguard Worker $this->assertSame('-47', $m->getOptionalSfixed64()); 64*1b3f573fSAndroid Build Coastguard Worker } else { 65*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(-43, $m->getOptionalInt64()); 66*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(43, $m->getOptionalUint64()); 67*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(-45, $m->getOptionalSint64()); 68*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(47, $m->getOptionalFixed64()); 69*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(-47, $m->getOptionalSfixed64()); 70*1b3f573fSAndroid Build Coastguard Worker } 71*1b3f573fSAndroid Build Coastguard Worker 72*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-42, $m->getRepeatedInt32()[0]); 73*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(42, $m->getRepeatedUint32()[0]); 74*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-43, $m->getRepeatedInt64()[0]); 75*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(43, $m->getRepeatedUint64()[0]); 76*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-44, $m->getRepeatedSint32()[0]); 77*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-45, $m->getRepeatedSint64()[0]); 78*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(46, $m->getRepeatedFixed32()[0]); 79*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(47, $m->getRepeatedFixed64()[0]); 80*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-46, $m->getRepeatedSfixed32()[0]); 81*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-47, $m->getRepeatedSfixed64()[0]); 82*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(1.5, $m->getRepeatedFloat()[0]); 83*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(1.6, $m->getRepeatedDouble()[0]); 84*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(true, $m->getRepeatedBool()[0]); 85*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('a', $m->getRepeatedString()[0]); 86*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('bbbb', $m->getRepeatedBytes()[0]); 87*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(34, $m->getRepeatedMessage()[0]->GetA()); 88*1b3f573fSAndroid Build Coastguard Worker 89*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-52, $m->getRepeatedInt32()[1]); 90*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(52, $m->getRepeatedUint32()[1]); 91*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-53, $m->getRepeatedInt64()[1]); 92*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(53, $m->getRepeatedUint64()[1]); 93*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-54, $m->getRepeatedSint32()[1]); 94*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-55, $m->getRepeatedSint64()[1]); 95*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(56, $m->getRepeatedFixed32()[1]); 96*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(57, $m->getRepeatedFixed64()[1]); 97*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-56, $m->getRepeatedSfixed32()[1]); 98*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-57, $m->getRepeatedSfixed64()[1]); 99*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(2.5, $m->getRepeatedFloat()[1]); 100*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(2.6, $m->getRepeatedDouble()[1]); 101*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(false, $m->getRepeatedBool()[1]); 102*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('c', $m->getRepeatedString()[1]); 103*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('dddd', $m->getRepeatedBytes()[1]); 104*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(35, $m->getRepeatedMessage()[1]->GetA()); 105*1b3f573fSAndroid Build Coastguard Worker 106*1b3f573fSAndroid Build Coastguard Worker if (PHP_INT_SIZE == 4) { 107*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('-63', $m->getMapInt64Int64()['-63']); 108*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('63', $m->getMapUint64Uint64()['63']); 109*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('-65', $m->getMapSint64Sint64()['-65']); 110*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('67', $m->getMapFixed64Fixed64()['67']); 111*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('-69', $m->getMapSfixed64Sfixed64()['-69']); 112*1b3f573fSAndroid Build Coastguard Worker } else { 113*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-63, $m->getMapInt64Int64()[-63]); 114*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(63, $m->getMapUint64Uint64()[63]); 115*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-65, $m->getMapSint64Sint64()[-65]); 116*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(67, $m->getMapFixed64Fixed64()[67]); 117*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-69, $m->getMapSfixed64Sfixed64()[-69]); 118*1b3f573fSAndroid Build Coastguard Worker } 119*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-62, $m->getMapInt32Int32()[-62]); 120*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(62, $m->getMapUint32Uint32()[62]); 121*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-64, $m->getMapSint32Sint32()[-64]); 122*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(66, $m->getMapFixed32Fixed32()[66]); 123*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-68, $m->getMapSfixed32Sfixed32()[-68]); 124*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(3.5, $m->getMapInt32Float()[1]); 125*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(3.6, $m->getMapInt32Double()[1]); 126*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(true , $m->getMapBoolBool()[true]); 127*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('e', $m->getMapStringString()['e']); 128*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('ffff', $m->getMapInt32Bytes()[1]); 129*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(TestEnum::ONE, $m->getMapInt32Enum()[1]); 130*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(36, $m->getMapInt32Message()[1]->GetA()); 131*1b3f573fSAndroid Build Coastguard Worker } 132*1b3f573fSAndroid Build Coastguard Worker 133*1b3f573fSAndroid Build Coastguard Worker // Test message merged from setFields and setFields2. 134*1b3f573fSAndroid Build Coastguard Worker public function expectFieldsMerged(TestMessage $m) 135*1b3f573fSAndroid Build Coastguard Worker { 136*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(-144, $m->getOptionalSint32()); 137*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(146, $m->getOptionalFixed32()); 138*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(-146, $m->getOptionalSfixed32()); 139*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(11.5, $m->getOptionalFloat()); 140*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(11.6, $m->getOptionalDouble()); 141*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(true, $m->getOptionalBool()); 142*1b3f573fSAndroid Build Coastguard Worker $this->assertSame('aa', $m->getOptionalString()); 143*1b3f573fSAndroid Build Coastguard Worker $this->assertSame('bb', $m->getOptionalBytes()); 144*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(133, $m->getOptionalMessage()->getA()); 145*1b3f573fSAndroid Build Coastguard Worker if (PHP_INT_SIZE == 4) { 146*1b3f573fSAndroid Build Coastguard Worker $this->assertSame('-143', $m->getOptionalInt64()); 147*1b3f573fSAndroid Build Coastguard Worker $this->assertSame('143', $m->getOptionalUint64()); 148*1b3f573fSAndroid Build Coastguard Worker $this->assertSame('-145', $m->getOptionalSint64()); 149*1b3f573fSAndroid Build Coastguard Worker $this->assertSame('147', $m->getOptionalFixed64()); 150*1b3f573fSAndroid Build Coastguard Worker $this->assertSame('-147', $m->getOptionalSfixed64()); 151*1b3f573fSAndroid Build Coastguard Worker } else { 152*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(-143, $m->getOptionalInt64()); 153*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(143, $m->getOptionalUint64()); 154*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(-145, $m->getOptionalSint64()); 155*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(147, $m->getOptionalFixed64()); 156*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(-147, $m->getOptionalSfixed64()); 157*1b3f573fSAndroid Build Coastguard Worker } 158*1b3f573fSAndroid Build Coastguard Worker 159*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-42, $m->getRepeatedInt32()[0]); 160*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(42, $m->getRepeatedUint32()[0]); 161*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-43, $m->getRepeatedInt64()[0]); 162*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(43, $m->getRepeatedUint64()[0]); 163*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-44, $m->getRepeatedSint32()[0]); 164*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-45, $m->getRepeatedSint64()[0]); 165*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(46, $m->getRepeatedFixed32()[0]); 166*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(47, $m->getRepeatedFixed64()[0]); 167*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-46, $m->getRepeatedSfixed32()[0]); 168*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-47, $m->getRepeatedSfixed64()[0]); 169*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(1.5, $m->getRepeatedFloat()[0]); 170*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(1.6, $m->getRepeatedDouble()[0]); 171*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(true, $m->getRepeatedBool()[0]); 172*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('a', $m->getRepeatedString()[0]); 173*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('bbbb', $m->getRepeatedBytes()[0]); 174*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(TestEnum::ZERO, $m->getRepeatedEnum()[0]); 175*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(34, $m->getRepeatedMessage()[0]->GetA()); 176*1b3f573fSAndroid Build Coastguard Worker 177*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-52, $m->getRepeatedInt32()[1]); 178*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(52, $m->getRepeatedUint32()[1]); 179*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-53, $m->getRepeatedInt64()[1]); 180*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(53, $m->getRepeatedUint64()[1]); 181*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-54, $m->getRepeatedSint32()[1]); 182*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-55, $m->getRepeatedSint64()[1]); 183*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(56, $m->getRepeatedFixed32()[1]); 184*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(57, $m->getRepeatedFixed64()[1]); 185*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-56, $m->getRepeatedSfixed32()[1]); 186*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-57, $m->getRepeatedSfixed64()[1]); 187*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(2.5, $m->getRepeatedFloat()[1]); 188*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(2.6, $m->getRepeatedDouble()[1]); 189*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(false, $m->getRepeatedBool()[1]); 190*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('c', $m->getRepeatedString()[1]); 191*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('dddd', $m->getRepeatedBytes()[1]); 192*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(TestEnum::ONE, $m->getRepeatedEnum()[1]); 193*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(35, $m->getRepeatedMessage()[1]->GetA()); 194*1b3f573fSAndroid Build Coastguard Worker 195*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-142, $m->getRepeatedInt32()[2]); 196*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(142, $m->getRepeatedUint32()[2]); 197*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-143, $m->getRepeatedInt64()[2]); 198*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(143, $m->getRepeatedUint64()[2]); 199*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-144, $m->getRepeatedSint32()[2]); 200*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-145, $m->getRepeatedSint64()[2]); 201*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(146, $m->getRepeatedFixed32()[2]); 202*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(147, $m->getRepeatedFixed64()[2]); 203*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-146, $m->getRepeatedSfixed32()[2]); 204*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-147, $m->getRepeatedSfixed64()[2]); 205*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(11.5, $m->getRepeatedFloat()[2]); 206*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(11.6, $m->getRepeatedDouble()[2]); 207*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(false, $m->getRepeatedBool()[2]); 208*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('aa', $m->getRepeatedString()[2]); 209*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('bb', $m->getRepeatedBytes()[2]); 210*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(TestEnum::TWO, $m->getRepeatedEnum()[2]); 211*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(134, $m->getRepeatedMessage()[2]->GetA()); 212*1b3f573fSAndroid Build Coastguard Worker 213*1b3f573fSAndroid Build Coastguard Worker if (PHP_INT_SIZE == 4) { 214*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('-163', $m->getMapInt64Int64()['-63']); 215*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('163', $m->getMapUint64Uint64()['63']); 216*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('-165', $m->getMapSint64Sint64()['-65']); 217*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('167', $m->getMapFixed64Fixed64()['67']); 218*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('-169', $m->getMapSfixed64Sfixed64()['-69']); 219*1b3f573fSAndroid Build Coastguard Worker } else { 220*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-163, $m->getMapInt64Int64()[-63]); 221*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(163, $m->getMapUint64Uint64()[63]); 222*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-165, $m->getMapSint64Sint64()[-65]); 223*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(167, $m->getMapFixed64Fixed64()[67]); 224*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-169, $m->getMapSfixed64Sfixed64()[-69]); 225*1b3f573fSAndroid Build Coastguard Worker } 226*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-162, $m->getMapInt32Int32()[-62]); 227*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(162, $m->getMapUint32Uint32()[62]); 228*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-164, $m->getMapSint32Sint32()[-64]); 229*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(166, $m->getMapFixed32Fixed32()[66]); 230*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-168, $m->getMapSfixed32Sfixed32()[-68]); 231*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(13.5, $m->getMapInt32Float()[1]); 232*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(13.6, $m->getMapInt32Double()[1]); 233*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(false , $m->getMapBoolBool()[true]); 234*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('ee', $m->getMapStringString()['e']); 235*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('ff', $m->getMapInt32Bytes()[1]); 236*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(TestEnum::TWO, $m->getMapInt32Enum()[1]); 237*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(136, $m->getMapInt32Message()[1]->GetA()); 238*1b3f573fSAndroid Build Coastguard Worker 239*1b3f573fSAndroid Build Coastguard Worker if (PHP_INT_SIZE == 4) { 240*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('-163', $m->getMapInt64Int64()['-163']); 241*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('163', $m->getMapUint64Uint64()['163']); 242*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('-165', $m->getMapSint64Sint64()['-165']); 243*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('167', $m->getMapFixed64Fixed64()['167']); 244*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('-169', $m->getMapSfixed64Sfixed64()['-169']); 245*1b3f573fSAndroid Build Coastguard Worker } else { 246*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-163, $m->getMapInt64Int64()[-163]); 247*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(163, $m->getMapUint64Uint64()[163]); 248*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-165, $m->getMapSint64Sint64()[-165]); 249*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(167, $m->getMapFixed64Fixed64()[167]); 250*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-169, $m->getMapSfixed64Sfixed64()[-169]); 251*1b3f573fSAndroid Build Coastguard Worker } 252*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-162, $m->getMapInt32Int32()[-162]); 253*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(162, $m->getMapUint32Uint32()[162]); 254*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-164, $m->getMapSint32Sint32()[-164]); 255*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(166, $m->getMapFixed32Fixed32()[166]); 256*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(-168, $m->getMapSfixed32Sfixed32()[-168]); 257*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(13.5, $m->getMapInt32Float()[2]); 258*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(13.6, $m->getMapInt32Double()[2]); 259*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(false , $m->getMapBoolBool()[false]); 260*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('ee', $m->getMapStringString()['ee']); 261*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals('ff', $m->getMapInt32Bytes()[2]); 262*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(TestEnum::TWO, $m->getMapInt32Enum()[2]); 263*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(136, $m->getMapInt32Message()[2]->GetA()); 264*1b3f573fSAndroid Build Coastguard Worker } 265*1b3f573fSAndroid Build Coastguard Worker 266*1b3f573fSAndroid Build Coastguard Worker public function expectEmptyFields(TestMessage $m) 267*1b3f573fSAndroid Build Coastguard Worker { 268*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOptionalInt32()); 269*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOptionalUint32()); 270*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOptionalSint32()); 271*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOptionalFixed32()); 272*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOptionalSfixed32()); 273*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0.0, $m->getOptionalFloat()); 274*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0.0, $m->getOptionalDouble()); 275*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(false, $m->getOptionalBool()); 276*1b3f573fSAndroid Build Coastguard Worker $this->assertSame('', $m->getOptionalString()); 277*1b3f573fSAndroid Build Coastguard Worker $this->assertSame('', $m->getOptionalBytes()); 278*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOptionalEnum()); 279*1b3f573fSAndroid Build Coastguard Worker $this->assertNull($m->getOptionalMessage()); 280*1b3f573fSAndroid Build Coastguard Worker $this->assertNull($m->getOptionalIncludedMessage()); 281*1b3f573fSAndroid Build Coastguard Worker $this->assertNull($m->getRecursive()); 282*1b3f573fSAndroid Build Coastguard Worker if (PHP_INT_SIZE == 4) { 283*1b3f573fSAndroid Build Coastguard Worker $this->assertSame("0", $m->getOptionalInt64()); 284*1b3f573fSAndroid Build Coastguard Worker $this->assertSame("0", $m->getOptionalUint64()); 285*1b3f573fSAndroid Build Coastguard Worker $this->assertSame("0", $m->getOptionalSint64()); 286*1b3f573fSAndroid Build Coastguard Worker $this->assertSame("0", $m->getOptionalFixed64()); 287*1b3f573fSAndroid Build Coastguard Worker $this->assertSame("0", $m->getOptionalSfixed64()); 288*1b3f573fSAndroid Build Coastguard Worker } else { 289*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOptionalInt64()); 290*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOptionalUint64()); 291*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOptionalSint64()); 292*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOptionalFixed64()); 293*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOptionalSfixed64()); 294*1b3f573fSAndroid Build Coastguard Worker } 295*1b3f573fSAndroid Build Coastguard Worker 296*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getRepeatedInt32())); 297*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getRepeatedUint32())); 298*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getRepeatedInt64())); 299*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getRepeatedUint64())); 300*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getRepeatedSint32())); 301*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getRepeatedSint64())); 302*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getRepeatedFixed32())); 303*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getRepeatedFixed64())); 304*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getRepeatedSfixed32())); 305*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getRepeatedSfixed64())); 306*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getRepeatedFloat())); 307*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getRepeatedDouble())); 308*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getRepeatedBool())); 309*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getRepeatedString())); 310*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getRepeatedBytes())); 311*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getRepeatedEnum())); 312*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getRepeatedMessage())); 313*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getRepeatedRecursive())); 314*1b3f573fSAndroid Build Coastguard Worker 315*1b3f573fSAndroid Build Coastguard Worker $this->assertSame("", $m->getMyOneof()); 316*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOneofInt32()); 317*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOneofUint32()); 318*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOneofSint32()); 319*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOneofFixed32()); 320*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOneofSfixed32()); 321*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0.0, $m->getOneofFloat()); 322*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0.0, $m->getOneofDouble()); 323*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(false, $m->getOneofBool()); 324*1b3f573fSAndroid Build Coastguard Worker $this->assertSame('', $m->getOneofString()); 325*1b3f573fSAndroid Build Coastguard Worker $this->assertSame('', $m->getOneofBytes()); 326*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOneofEnum()); 327*1b3f573fSAndroid Build Coastguard Worker $this->assertNull($m->getOptionalMessage()); 328*1b3f573fSAndroid Build Coastguard Worker if (PHP_INT_SIZE == 4) { 329*1b3f573fSAndroid Build Coastguard Worker $this->assertSame("0", $m->getOneofInt64()); 330*1b3f573fSAndroid Build Coastguard Worker $this->assertSame("0", $m->getOneofUint64()); 331*1b3f573fSAndroid Build Coastguard Worker $this->assertSame("0", $m->getOneofSint64()); 332*1b3f573fSAndroid Build Coastguard Worker $this->assertSame("0", $m->getOneofFixed64()); 333*1b3f573fSAndroid Build Coastguard Worker $this->assertSame("0", $m->getOneofSfixed64()); 334*1b3f573fSAndroid Build Coastguard Worker } else { 335*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOneofInt64()); 336*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOneofUint64()); 337*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOneofSint64()); 338*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOneofFixed64()); 339*1b3f573fSAndroid Build Coastguard Worker $this->assertSame(0, $m->getOneofSfixed64()); 340*1b3f573fSAndroid Build Coastguard Worker } 341*1b3f573fSAndroid Build Coastguard Worker 342*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getMapInt64Int64())); 343*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getMapUint64Uint64())); 344*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getMapSint64Sint64())); 345*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getMapFixed64Fixed64())); 346*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getMapInt32Int32())); 347*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getMapUint32Uint32())); 348*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getMapSint32Sint32())); 349*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getMapFixed32Fixed32())); 350*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getMapSfixed32Sfixed32())); 351*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getMapSfixed64Sfixed64())); 352*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getMapInt32Float())); 353*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getMapInt32Double())); 354*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getMapBoolBool())); 355*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getMapStringString())); 356*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getMapInt32Bytes())); 357*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getMapInt32Enum())); 358*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getMapInt32Message())); 359*1b3f573fSAndroid Build Coastguard Worker $this->assertEquals(0, count($m->getMapRecursive())); 360*1b3f573fSAndroid Build Coastguard Worker } 361*1b3f573fSAndroid Build Coastguard Worker 362*1b3f573fSAndroid Build Coastguard Worker // This test is to avoid the warning of no test by php unit. 363*1b3f573fSAndroid Build Coastguard Worker public function testNone() 364*1b3f573fSAndroid Build Coastguard Worker { 365*1b3f573fSAndroid Build Coastguard Worker $this->assertTrue(true); 366*1b3f573fSAndroid Build Coastguard Worker } 367*1b3f573fSAndroid Build Coastguard Worker} 368