--SKIPIF--
<?php
include 'skip.inc';
-(5 > (int) PHP_VERSION) and die('skip PHP5 is required for Http classes');
+checkmin(5);
+checkcls('HttpRequestPool');
+checkurl('www.php.net');
+checkurl('de.php.net');
+checkurl('ch.php.net');
+checkurl('at.php.net');
+checkurl('dev.iworks.at');
?>
--FILE--
<?php
-$urls = array(
- 'http://www.php.net',
- 'http://pear.php.net',
- 'http://pecl.php.net'
+echo "-TEST\n";
+$post = new HttpRequest('http://dev.iworks.at/.print_request.php', HTTP_METH_POST);
+$post->addPostFields(array('a'=>1,'b'=>2)) ;
+
+$pool = new HttpRequestPool(
+ new HttpRequest('http://www.php.net/', HTTP_METH_HEAD),
+ new HttpRequest('http://at.php.net/', HTTP_METH_HEAD),
+ new HttpRequest('http://de.php.net/', HTTP_METH_HEAD),
+ new HttpRequest('http://ch.php.net/', HTTP_METH_HEAD),
+ $post
);
-$pool = new HttpRequestPool;
-foreach ($urls as $url) {
- $pool->attach($reqs[] = new HttpRequest($url, HTTP_HEAD));
-}
+
$pool->send();
-foreach ($reqs as $req) {
- echo $req->getResponseInfo('effective_url'), '=',
+
+foreach ($pool as $req) {
+ echo $req->getUrl(), '=',
$req->getResponseCode(), ':',
$req->getResponseMessage()->getResponseCode(), "\n";
- $pool->detach($req);
- $pool->attach($req);
- $pool->detach($req);
- $pool->attach($req);
- $pool->detach($req);
- $pool->attach($req);
- $pool->detach($req);
- $pool->attach($req);
- $req->getResponseMessage()->getResponseCode();
- $req->getResponseMessage()->getResponseCode();
- $req->getResponseMessage()->getResponseCode();
- $req->getResponseMessage()->getResponseCode();
}
-$pool->send();
-$pool->reset();
-$pool->attach($req);
+
+foreach ($pool as $req) {
+ try {
+ $pool->attach(new HttpRequest('http://foo.bar'));
+ } catch (HttpRequestPoolException $x) {
+ echo ".\n";
+ }
+}
+
+foreach ($pool as $req) {
+ $pool->detach($req);
+}
+
echo "Done\n";
?>
---EXPECTF--
-Content-type: text/html
-X-Powered-By: PHP/%s
+--EXPECTF--
+%sTEST
http://www.php.net/=200:200
-http://pear.php.net/=200:200
-http://pecl.php.net/=200:200
+http://at.php.net/=200:200
+http://de.php.net/=200:200
+http://ch.php.net/=200:200
+http://dev.iworks.at/.print_request.php=200:200
+.
+.
+.
+.
+.
Done