Add tcp client and tcp server support
git-svn-id: https://svn.fournier38.fr/svn/ProgSVN/trunk@4014 bf3deb0d-5f1a-0410-827f-c0cc1f45334c
This commit is contained in:
72
Tests/tcpclientTest.php
Normal file
72
Tests/tcpclientTest.php
Normal file
@@ -0,0 +1,72 @@
|
||||
<?php
|
||||
|
||||
/** Test the TCP client */
|
||||
class test_tcpclient 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");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user