|  | @@ -1,6 +1,7 @@
 | 
	
		
			
				|  |  |  <?php
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  use Foo\TestMessage;
 | 
	
		
			
				|  |  | +use Foo\TestEnum;
 | 
	
		
			
				|  |  |  use Foo\TestMessage_Sub;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  class TestBase extends PHPUnit_Framework_TestCase
 | 
	
	
		
			
				|  | @@ -69,6 +70,32 @@ class TestBase extends PHPUnit_Framework_TestCase
 | 
	
		
			
				|  |  |          $this->assertEquals('c',   $m->getRepeatedString()[1]);
 | 
	
		
			
				|  |  |          $this->assertEquals('d',   $m->getRepeatedBytes()[1]);
 | 
	
		
			
				|  |  |          $this->assertEquals(35,    $m->getRepeatedMessage()[1]->GetA());
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        if (PHP_INT_SIZE == 4) {
 | 
	
		
			
				|  |  | +            $this->assertEquals('-63', $m->getMapInt64Int64()['-63']);
 | 
	
		
			
				|  |  | +            $this->assertEquals('63',  $m->getMapUint64Uint64()['63']);
 | 
	
		
			
				|  |  | +            $this->assertEquals('-65', $m->getMapSint64Sint64()['-65']);
 | 
	
		
			
				|  |  | +            $this->assertEquals('67',  $m->getMapFixed64Fixed64()['67']);
 | 
	
		
			
				|  |  | +            $this->assertEquals('-69',  $m->getMapSfixed64Sfixed64()['-69']);
 | 
	
		
			
				|  |  | +        } else {
 | 
	
		
			
				|  |  | +            $this->assertEquals(-63, $m->getMapInt64Int64()[-63]);
 | 
	
		
			
				|  |  | +            $this->assertEquals(63,  $m->getMapUint64Uint64()[63]);
 | 
	
		
			
				|  |  | +            $this->assertEquals(-65, $m->getMapSint64Sint64()[-65]);
 | 
	
		
			
				|  |  | +            $this->assertEquals(67,  $m->getMapFixed64Fixed64()[67]);
 | 
	
		
			
				|  |  | +            $this->assertEquals(-69,  $m->getMapSfixed64Sfixed64()[-69]);
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +        $this->assertEquals(-62, $m->getMapInt32Int32()[-62]);
 | 
	
		
			
				|  |  | +        $this->assertEquals(62,  $m->getMapUint32Uint32()[62]);
 | 
	
		
			
				|  |  | +        $this->assertEquals(-64, $m->getMapSint32Sint32()[-64]);
 | 
	
		
			
				|  |  | +        $this->assertEquals(66,  $m->getMapFixed32Fixed32()[66]);
 | 
	
		
			
				|  |  | +        $this->assertEquals(-68,  $m->getMapSfixed32Sfixed32()[-68]);
 | 
	
		
			
				|  |  | +        $this->assertEquals(3.5, $m->getMapInt32Float()[1]);
 | 
	
		
			
				|  |  | +        $this->assertEquals(3.6, $m->getMapInt32Double()[1]);
 | 
	
		
			
				|  |  | +        $this->assertEquals(true , $m->getMapBoolBool()[true]);
 | 
	
		
			
				|  |  | +        $this->assertEquals('e', $m->getMapStringString()['e']);
 | 
	
		
			
				|  |  | +        $this->assertEquals('f', $m->getMapInt32Bytes()[1]);
 | 
	
		
			
				|  |  | +        $this->assertEquals(TestEnum::ONE, $m->getMapInt32Enum()[1]);
 | 
	
		
			
				|  |  | +        $this->assertEquals(36, $m->getMapInt32Message()[1]->GetA());
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      public function expectEmptyFields(TestMessage $m)
 | 
	
	
		
			
				|  | @@ -83,7 +110,10 @@ class TestBase extends PHPUnit_Framework_TestCase
 | 
	
		
			
				|  |  |          $this->assertSame(false, $m->getOptionalBool());
 | 
	
		
			
				|  |  |          $this->assertSame('',  $m->getOptionalString());
 | 
	
		
			
				|  |  |          $this->assertSame('',  $m->getOptionalBytes());
 | 
	
		
			
				|  |  | +        $this->assertSame(0, $m->getOptionalEnum());
 | 
	
		
			
				|  |  |          $this->assertNull($m->getOptionalMessage());
 | 
	
		
			
				|  |  | +        $this->assertNull($m->getOptionalIncludedMessage());
 | 
	
		
			
				|  |  | +        $this->assertNull($m->getRecursive());
 | 
	
		
			
				|  |  |          if (PHP_INT_SIZE == 4) {
 | 
	
		
			
				|  |  |              $this->assertSame("0", $m->getOptionalInt64());
 | 
	
		
			
				|  |  |              $this->assertSame("0", $m->getOptionalUint64());
 | 
	
	
		
			
				|  | @@ -97,6 +127,71 @@ class TestBase extends PHPUnit_Framework_TestCase
 | 
	
		
			
				|  |  |              $this->assertSame(0, $m->getOptionalFixed64());
 | 
	
		
			
				|  |  |              $this->assertSame(0, $m->getOptionalSfixed64());
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getRepeatedInt32()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getRepeatedUint32()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getRepeatedInt64()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getRepeatedUint64()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getRepeatedSint32()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getRepeatedSint64()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getRepeatedFixed32()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getRepeatedFixed64()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getRepeatedSfixed32()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getRepeatedSfixed64()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getRepeatedFloat()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getRepeatedDouble()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getRepeatedBool()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getRepeatedString()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getRepeatedBytes()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getRepeatedEnum()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getRepeatedMessage()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getRepeatedRecursive()));
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        $this->assertSame("", $m->getMyOneof());
 | 
	
		
			
				|  |  | +        $this->assertSame(0,   $m->getOneofInt32());
 | 
	
		
			
				|  |  | +        $this->assertSame(0,   $m->getOneofUint32());
 | 
	
		
			
				|  |  | +        $this->assertSame(0,   $m->getOneofSint32());
 | 
	
		
			
				|  |  | +        $this->assertSame(0,   $m->getOneofFixed32());
 | 
	
		
			
				|  |  | +        $this->assertSame(0,   $m->getOneofSfixed32());
 | 
	
		
			
				|  |  | +        $this->assertSame(0.0, $m->getOneofFloat());
 | 
	
		
			
				|  |  | +        $this->assertSame(0.0, $m->getOneofDouble());
 | 
	
		
			
				|  |  | +        $this->assertSame(false, $m->getOneofBool());
 | 
	
		
			
				|  |  | +        $this->assertSame('',  $m->getOneofString());
 | 
	
		
			
				|  |  | +        $this->assertSame('',  $m->getOneofBytes());
 | 
	
		
			
				|  |  | +        $this->assertSame(0, $m->getOneofEnum());
 | 
	
		
			
				|  |  | +        $this->assertNull($m->getOptionalMessage());
 | 
	
		
			
				|  |  | +        if (PHP_INT_SIZE == 4) {
 | 
	
		
			
				|  |  | +            $this->assertSame("0", $m->getOneofInt64());
 | 
	
		
			
				|  |  | +            $this->assertSame("0", $m->getOneofUint64());
 | 
	
		
			
				|  |  | +            $this->assertSame("0", $m->getOneofSint64());
 | 
	
		
			
				|  |  | +            $this->assertSame("0", $m->getOneofFixed64());
 | 
	
		
			
				|  |  | +            $this->assertSame("0", $m->getOneofSfixed64());
 | 
	
		
			
				|  |  | +        } else {
 | 
	
		
			
				|  |  | +            $this->assertSame(0, $m->getOneofInt64());
 | 
	
		
			
				|  |  | +            $this->assertSame(0, $m->getOneofUint64());
 | 
	
		
			
				|  |  | +            $this->assertSame(0, $m->getOneofSint64());
 | 
	
		
			
				|  |  | +            $this->assertSame(0, $m->getOneofFixed64());
 | 
	
		
			
				|  |  | +            $this->assertSame(0, $m->getOneofSfixed64());
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getMapInt64Int64()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getMapUint64Uint64()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getMapSint64Sint64()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getMapFixed64Fixed64()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getMapInt32Int32()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getMapUint32Uint32()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getMapSint32Sint32()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getMapFixed32Fixed32()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getMapSfixed32Sfixed32()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getMapSfixed64Sfixed64()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getMapInt32Float()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getMapInt32Double()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getMapBoolBool()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getMapStringString()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getMapInt32Bytes()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getMapInt32Enum()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getMapInt32Message()));
 | 
	
		
			
				|  |  | +        $this->assertEquals(0, count($m->getMapRecursive()));
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    // This test is to avoid the warning of no test by php unit.
 |