Example #1
0
 public function testPublicIp()
 {
     $c = new Client($this->request);
     $this->assertNull($c->publicIp());
     $c = new Client($this->request->withHeader('x-real-ip', '202.108.2.3'));
     $this->assertEquals('202.108.2.3', $c->publicIp());
     $c = new Client($this->request->withHeader('x-real-ip', '192.168.2.2'));
     $this->assertNull($c->publicIp());
     $c = new Client($this->request->withHeader('x-forwarded-for', '192.168.23.2, 172.25.72.2'));
     $this->assertNull($c->publicIp());
     $c = new Client($this->request->withHeader('x-forwarded-for', '192.168.23.2, 202.108.2.1'));
     $this->assertEquals('202.108.2.1', $c->publicIp());
     $c = new Client(ServerRequestFactory::fromGlobals(['REMOTE_ADDR' => '202.108.3.1']));
     $this->assertEquals('202.108.3.1', $c->publicIp());
 }