Commit: 6ba790421695bb8240d926e1e0fa9e822c2b14aa

Author: Nate Abele | Date: 2010-08-19 17:31:44 -0400
Refactoring factorying for `\data\source\Http` and updating test cases to reflect changes in property names in `\net\http` classes.
diff --git a/libraries/lithium/data/source/Http.php b/libraries/lithium/data/source/Http.php index 11e906c..6b9a23a 100644 --- a/libraries/lithium/data/source/Http.php +++ b/libraries/lithium/data/source/Http.php @@ -88,7 +88,7 @@ class Http extends \lithium\data\Source { protected function _init() { $config = $this->_config; unset($config['type']); - $this->connection = new $this->_classes['service']($config); + $this->connection = $this->_instance('service', $config); parent::_init(); } diff --git a/libraries/lithium/tests/cases/data/source/HttpTest.php b/libraries/lithium/tests/cases/data/source/HttpTest.php index 8f12791..581ba99 100644 --- a/libraries/lithium/tests/cases/data/source/HttpTest.php +++ b/libraries/lithium/tests/cases/data/source/HttpTest.php @@ -109,7 +109,7 @@ class HttpTest extends \lithium\test\Unit { $this->assertEqual($expected, $result); $expected = 'UTF-8'; - $result = $http->last->response->charset; + $result = $http->last->response->encoding; $this->assertEqual($expected, $result); } @@ -117,25 +117,20 @@ class HttpTest extends \lithium\test\Unit { $http = new Http($this->_testConfig); $result = $http->get('search.json'); - $expected = 'HTTP/1.1'; $result = $http->last->response->protocol; - $this->assertEqual($expected, $result); + $this->assertEqual('HTTP/1.1', $result); - $expected = '200'; $result = $http->last->response->status['code']; - $this->assertEqual($expected, $result); + $this->assertEqual('200', $result); - $expected = 'OK'; $result = $http->last->response->status['message']; - $this->assertEqual($expected, $result); + $this->assertEqual('OK', $result); - $expected = 'text/html'; $result = $http->last->response->type; - $this->assertEqual($expected, $result); + $this->assertEqual('text/html', $result); - $expected = 'UTF-8'; - $result = $http->last->response->charset; - $this->assertEqual($expected, $result); + $result = $http->last->response->encoding; + $this->assertEqual('UTF-8', $result); } public function testPost() { diff --git a/libraries/lithium/tests/cases/net/http/ResponseTest.php b/libraries/lithium/tests/cases/net/http/ResponseTest.php index 2e97e1f..31e927f 100644 --- a/libraries/lithium/tests/cases/net/http/ResponseTest.php +++ b/libraries/lithium/tests/cases/net/http/ResponseTest.php @@ -48,6 +48,20 @@ class ResponseTest extends \lithium\test\Unit { $this->assertEqual($expected, $result); } + public function testParsingContentTypeWithEncoding() { + $response = new Response(array('headers' => array( + 'Content-Type' => 'text/xml;charset=UTF-8' + ))); + $this->assertEqual('text/xml', $response->type); + $this->assertEqual('UTF-8', $response->encoding); + + $response = new Response(array('headers' => array( + 'Content-Type' => 'text/xml;charset=UTF-8' + ))); + $this->assertEqual('text/xml', $response->type); + $this->assertEqual('UTF-8', $response->encoding); + } + public function testParseMessage() { $body = join("\r\n", array( 'HTTP/1.1 200 OK', @@ -62,10 +76,7 @@ class ResponseTest extends \lithium\test\Unit { $this->assertEqual($body, (string) $response); $body = 'Not a Message'; - $expected = join("\r\n", array( - 'HTTP/1.1 200 OK', - '', '', 'Not a Message' - )); + $expected = join("\r\n", array('HTTP/1.1 200 OK', '', '', 'Not a Message')); $response = new Response(compact('body')); $this->assertEqual($expected, (string) $response); } @@ -96,7 +107,7 @@ class ResponseTest extends \lithium\test\Unit { 'Content-Type' => 'text/html;charset=UTF-8' ), 'type' => 'text/html', - 'charset' => 'UTF-8', + 'encoding' => 'UTF-8', 'body' => array('Test!') ); $response = new Response($config); diff --git a/libraries/lithium/tests/cases/net/http/ServiceTest.php b/libraries/lithium/tests/cases/net/http/ServiceTest.php index 2a56649..09d0e45 100644 --- a/libraries/lithium/tests/cases/net/http/ServiceTest.php +++ b/libraries/lithium/tests/cases/net/http/ServiceTest.php @@ -88,7 +88,7 @@ class ServiceTest extends \lithium\test\Unit { $this->assertEqual($expected, $result); $expected = 'UTF-8'; - $result = $http->last->response->charset; + $result = $http->last->response->encoding; $this->assertEqual($expected, $result); } @@ -114,7 +114,7 @@ class ServiceTest extends \lithium\test\Unit { $this->assertEqual($expected, $result); $expected = 'UTF-8'; - $result = $http->last->response->charset; + $result = $http->last->response->encoding; $this->assertEqual($expected, $result); }