* @license BSD */ namespace Domframework\Tests; use Domframework\Tcpclient; /** Test the TCP client */ class TcpclientTest extends \PHPUnit_Framework_TestCase { public function test_GoogleIPv4 () { $tcpclient = new Tcpclient ("www.google.fr", 80); $tcpclient->preferIPv4 (true); $tcpclient->connect (); $tcpclient->send ("GET / HTTP/1.1\r\n". "Host: www.google.fr\r\n". "User-Agent: DomFramework\r\n". "Accept: *"."/*\r\n". "\r\n"); $res = ""; while (($read = $tcpclient->read ()) !== "") $res .= $read."\r\n"; $tcpclient->disconnect (); $this->assertSame (substr ($res, 0, 15), "HTTP/1.1 200 OK"); } public function test_GoogleIPv4orIpv6 () { $tcpclient = new Tcpclient ("www.google.fr", 80); $tcpclient->connect (); $tcpclient->send ("GET / HTTP/1.1\r\n". "Host: www.google.fr\r\n". "User-Agent: DomFramework\r\n". "Accept: *"."/*\r\n". "\r\n"); $res = ""; while (($read = $tcpclient->read ()) !== "") $res .= $read."\r\n"; $tcpclient->disconnect (); $this->assertSame (substr ($res, 0, 15), "HTTP/1.1 200 OK"); } public function test_GoogleSSL () { $tcpclient = new Tcpclient ("www.google.fr", 443); $tcpclient->connect (); $tcpclient->cryptoEnable (true); $tcpclient->send ("GET / HTTP/1.1\r\n". "Host: www.google.fr\r\n". "User-Agent: DomFramework\r\n". "Accept: *"."/*\r\n". "\r\n"); $res = ""; while (($read = $tcpclient->read ()) !== "") $res .= $read."\r\n"; $tcpclient->disconnect (); $this->assertSame (substr ($res, 0, 15), "HTTP/1.1 200 OK"); } public function test_GoogleSSLIPv6 () { $tcpclient = new Tcpclient ("ipv6.google.com", 443); $tcpclient->connect (); $tcpclient->cryptoEnable (true); $tcpclient->send ("GET / HTTP/1.1\r\n". "Host: www.google.fr\r\n". "User-Agent: DomFramework\r\n". "Accept: *"."/*\r\n". "\r\n"); $res = ""; while (($read = $tcpclient->read ()) !== "") $res .= $read."\r\n"; $tcpclient->disconnect (); $this->assertSame (substr ($res, 0, 15), "HTTP/1.1 200 OK"); } }