Use Curl::setURL() for HTTP calls; Update command line equivalents of calls

This commit is contained in:
Zach Borboa
2015-02-10 11:44:03 -08:00
parent 9da8277926
commit cd80ae8211
2 changed files with 15 additions and 28 deletions
+6 -19
View File
@@ -62,7 +62,6 @@ class Curl
public function get($url, $data = array())
{
$this->base_url = $url;
$this->setURL($url, $data);
$this->setOpt(CURLOPT_CUSTOMREQUEST, 'GET');
$this->setOpt(CURLOPT_HTTPGET, true);
@@ -75,9 +74,7 @@ class Curl
$this->unsetHeader('Content-Length');
}
$this->base_url = $url;
$this->url = $url;
$this->setOpt(CURLOPT_URL, $this->url);
$this->setURL($url);
$this->setOpt(CURLOPT_CUSTOMREQUEST, 'POST');
$this->setOpt(CURLOPT_POST, true);
$this->setOpt(CURLOPT_POSTFIELDS, $this->postfields($data));
@@ -86,9 +83,7 @@ class Curl
public function put($url, $data = array())
{
$this->base_url = $url;
$this->url = $url;
$this->setOpt(CURLOPT_URL, $this->url);
$this->setURL($url);
$this->setOpt(CURLOPT_CUSTOMREQUEST, 'PUT');
$put_data = $this->postfields($data);
if (empty($this->options[CURLOPT_INFILE]) && empty($this->options[CURLOPT_INFILESIZE])) {
@@ -100,10 +95,8 @@ class Curl
public function patch($url, $data = array())
{
$this->base_url = $url;
$this->url = $url;
$this->setURL($url);
$this->unsetHeader('Content-Length');
$this->setOpt(CURLOPT_URL, $this->url);
$this->setOpt(CURLOPT_CUSTOMREQUEST, 'PATCH');
$this->setOpt(CURLOPT_POSTFIELDS, $data);
return $this->exec();
@@ -111,19 +104,15 @@ class Curl
public function delete($url, $data = array())
{
$this->base_url = $url;
$this->url = $url;
$this->setURL($url, $data);
$this->unsetHeader('Content-Length');
$this->setOpt(CURLOPT_URL, $this->buildURL($this->url, $data));
$this->setOpt(CURLOPT_CUSTOMREQUEST, 'DELETE');
return $this->exec();
}
public function head($url, $data = array())
{
$this->base_url = $url;
$this->url = $this->buildURL($url, $data);
$this->setOpt(CURLOPT_URL, $this->url);
$this->setURL($url, $data);
$this->setOpt(CURLOPT_CUSTOMREQUEST, 'HEAD');
$this->setOpt(CURLOPT_NOBODY, true);
return $this->exec();
@@ -131,10 +120,8 @@ class Curl
public function options($url, $data = array())
{
$this->base_url = $url;
$this->url = $url;
$this->setURL($url, $data);
$this->unsetHeader('Content-Length');
$this->setOpt(CURLOPT_URL, $this->buildURL($url, $data));
$this->setOpt(CURLOPT_CUSTOMREQUEST, 'OPTIONS');
return $this->exec();
}
+9 -9
View File
@@ -88,47 +88,47 @@ class CurlTest extends PHPUnit_Framework_TestCase
{
$data = array('foo' => 'bar');
// curl -v --get "http://127.0.0.1:8000/" -d "foo=bar"
// curl -v --get --request GET "http://127.0.0.1:8000/" --data "foo=bar"
$test = new Test();
$test->server('server', 'GET', $data);
$this->assertEquals(Test::TEST_URL, $test->curl->base_url);
$this->assertEquals(Test::TEST_URL . '?' . http_build_query($data), $test->curl->url);
// curl -v --request POST "http://127.0.0.1:8000/" -d "foo=bar"
// curl -v --request POST "http://127.0.0.1:8000/" --data "foo=bar"
$test = new Test();
$test->server('server', 'POST', $data);
$this->assertEquals(Test::TEST_URL, $test->curl->base_url);
$this->assertEquals(Test::TEST_URL, $test->curl->url);
// curl -v --request PUT "http://127.0.0.1:8000/" -d "foo=bar"
// curl -v --request PUT "http://127.0.0.1:8000/" --data "foo=bar"
$test = new Test();
$test->server('server', 'PUT', $data);
$this->assertEquals(Test::TEST_URL, $test->curl->base_url);
$this->assertEquals(Test::TEST_URL, $test->curl->url);
// curl -v --request PATCH "http://127.0.0.1:8000/" -d "foo=bar"
// curl -v --request PATCH "http://127.0.0.1:8000/" --data "foo=bar"
$test = new Test();
$test->server('server', 'PATCH', $data);
$this->assertEquals(Test::TEST_URL, $test->curl->base_url);
$this->assertEquals(Test::TEST_URL, $test->curl->url);
// curl -v --request DELETE "http://127.0.0.1:8000/" -d "foo=bar"
// curl -v --get --request DELETE "http://127.0.0.1:8000/" --data "foo=bar"
$test = new Test();
$test->server('server', 'DELETE', $data);
$this->assertEquals(Test::TEST_URL, $test->curl->base_url);
$this->assertEquals(Test::TEST_URL, $test->curl->url);
$this->assertEquals(Test::TEST_URL . '?' . http_build_query($data), $test->curl->url);
// curl -v --head --get "http://127.0.0.1:8000/" -d "foo=bar"
// curl -v --get --request HEAD --head "http://127.0.0.1:8000/" --data "foo=bar"
$test = new Test();
$test->server('server', 'HEAD', $data);
$this->assertEquals(Test::TEST_URL, $test->curl->base_url);
$this->assertEquals(Test::TEST_URL . '?' . http_build_query($data), $test->curl->url);
// curl -v --request OPTIONS "http://127.0.0.1:8000/" -d "foo=bar"
// curl -v --get --request OPTIONS "http://127.0.0.1:8000/" --data "foo=bar"
$test = new Test();
$test->server('server', 'OPTIONS', $data);
$this->assertEquals(Test::TEST_URL, $test->curl->base_url);
$this->assertEquals(Test::TEST_URL, $test->curl->url);
$this->assertEquals(Test::TEST_URL . '?' . http_build_query($data), $test->curl->url);
}
public function testPostRequestMethod()