diff options
author | Nathan Gass | 2012-10-15 16:57:11 +0000 |
---|---|---|
committer | Nathan Gass | 2012-10-15 16:57:11 +0000 |
commit | ec2b0d1c3ad2b285adeea8bbb7e40878d82b4f98 (patch) | |
tree | a376518c16d22b43641a820cc3d8a2116a21227c | |
parent | 87587774e477cdeb9b1dd3580ebb55d86db182e8 (diff) | |
download | itools-ec2b0d1c3ad2b285adeea8bbb7e40878d82b4f98.tar.gz itools-ec2b0d1c3ad2b285adeea8bbb7e40878d82b4f98.tar.bz2 itools-ec2b0d1c3ad2b285adeea8bbb7e40878d82b4f98.zip |
add more it_url::get tests (some todo)
-rwxr-xr-x | tests/it_url.t | 31 | ||||
-rw-r--r-- | tests/it_url.testserver.php | 11 |
2 files changed, 42 insertions, 0 deletions
diff --git a/tests/it_url.t b/tests/it_url.t index 0655bda..e5f5c6b 100755 --- a/tests/it_url.t +++ b/tests/it_url.t @@ -164,6 +164,37 @@ $output = server_output(); if (!$res) diag($output); +$res = is( + it_url::get('http://localhost:8000/relative_redirect'), + "Testserver output after relative redirect", + 'TODO: it_url::get() follows relative redirect correctly', +); +$output = server_output(); +if (!$res) + diag($output); + +$res = is( + it_url::get('http://localhost:8000/nohost_redirect'), + "Testserver output after nohost redirect", + 'TODO: it_url::get() follows redirect without host correctly', +); +$output = server_output(); +if (!$res) + diag($output); + + +$res = ok( + !it_url::get('url' => 'http://localhost:8000/does_not_exist', 'retries' => 4), + 'it_url::get() retries on empty response', +); +$output = server_output(); +$res2 = ok( + count(preg_grep('/^Got Request:/', $output)) == 5, + 'it_url::get() respects set retry count', +); +if (!$res || !$res2) + diag($output); + $res = ok( !it_url::get(U('http://localhost:8000/redirect_loop', 'num' => 10)), 'it_url::get() handles redirect loop', diff --git a/tests/it_url.testserver.php b/tests/it_url.testserver.php index 12ce892..2d10052 100644 --- a/tests/it_url.testserver.php +++ b/tests/it_url.testserver.php @@ -22,7 +22,18 @@ switch ($_SERVER['PHP_SELF']) it_url::redirect(U("redirect_loop", array('num' => $_REQUEST['num'] - 1))); break; + case "/nohost_redirect": + header('Location: /redirect_target?type=nohost', true, 301); + exit; + + case "/relative_redirect": + header('Location: ../redirect_target?type=relative', true, 301); + exit; + case "/redirect_target": echo 'Testserver output after ' . $_REQUEST['type'] . ' redirect'; break; + + default: + fwrite($stderr, "Unknown path '$_SERVER[PHP_SELF]' not handled!\n"); } |