public function testBadSocket() { $socket = new SimpleSocket('bad_url', 111, 5); $this->assertTrue($socket->isError()); $this->assertPattern('/Cannot open \\[bad_url:111\\] with \\[/', $socket->getError()); $this->assertFalse($socket->isOpen()); $this->assertFalse($socket->write('A message')); }
function testSocket() { $socket = new SimpleSocket("www.lastcraft.com", 80); $this->assertFalse($socket->isError(), "Error [" . $socket->getError() . "]"); $this->assertTrue($socket->isOpen()); $this->assertTrue($socket->write("GET www.lastcraft.com/test/network_confirm.php HTTP/1.0\r\n")); $socket->write("Host: localhost\r\n"); $socket->write("Connection: close\r\n\r\n"); $this->assertEqual($socket->read(8), "HTTP/1.1"); $socket->close(); $this->assertEqual($socket->read(8), ""); }
/** * Fetches the content and parses the headers. * @param $socket Test override. * @return Either false or a HttpResponse. * @access public */ function fetch($socket = false) { if (!is_object($socket)) { $socket = new SimpleSocket($this->_url->getHost()); } if ($socket->isError()) { return false; } $socket->write("GET " . $this->_url->getPath() . $this->_url->getEncodedRequest() . " HTTP/1.0\r\n"); $socket->write("Host: " . $this->_url->getHost() . "\r\n"); foreach ($this->_user_headers as $header_line) { $socket->write($header_line . "\r\n"); } if (count($this->_cookies) > 0) { $socket->write("Cookie: " . $this->_marshallCookies($this->_cookies) . "\r\n"); } $socket->write("Connection: close\r\n"); $socket->write("\r\n"); return $this->_createResponse($socket); }