| 
					
				 | 
			
			
				@@ -366,6 +366,36 @@ class ImplementationTest extends TestBase 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             $this->assertSame(32768, $var); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         $this->assertFalse($input->readVarint64($var)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // Read 64 testing 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (PHP_INT_SIZE > 4) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            $testVals = array( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                '10'                 => '0a000000000000000000', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                '100'                => '64000000000000000000', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                '800'                => 'a0060000000000000000', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                '6400'               => '80320000000000000000', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                '70400'              => '80a60400000000000000', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                '774400'             => '80a22f00000000000000', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                '9292800'            => '8098b704000000000000', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                '74342400'           => '80c0b923000000000000', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                '743424000'          => '8080bfe2020000000000', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                '8177664000'         => '8080b5bb1e0000000000', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                '65421312000'        => '8080a8dbf30100000000', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                '785055744000'       => '8080e0c7ec1600000000', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                '9420668928000'      => '808080dd969202000000', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                '103627358208000'    => '808080fff9c717000000', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                '1139900940288000'   => '808080f5bd9783020000', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                '13678811283456000'  => '808080fce699a6180000', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                '109430490267648000' => '808080e0b7ceb1c20100', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                '984874412408832000' => '808080e0f5c1bed50d00', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            foreach ($testVals as $original => $encoded) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                $input = new InputStream(hex2bin($encoded)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                $this->assertTrue($input->readVarint64($var)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                $this->assertSame($original, $var); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public function testReadVarint32() 
			 |