Bladeren bron

ZF-11351
Zend_Gdata
Zend_Gdata_AuthSub should not accept vanilla Zend_Http_Client instances


git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@24033 44c647ce-9c0f-0410-b52a-842ac1e357ba

adamlundrigan 14 jaren geleden
bovenliggende
commit
e8a414d727
2 gewijzigde bestanden met toevoegingen van 14 en 2 verwijderingen
  1. 2 2
      library/Zend/Gdata/AuthSub.php
  2. 12 0
      tests/Zend/Gdata/AuthSubTest.php

+ 2 - 2
library/Zend/Gdata/AuthSub.php

@@ -229,9 +229,9 @@ class Zend_Gdata_AuthSub
         if ($client == null) {
             $client = new Zend_Gdata_HttpClient();
         }
-        if (!$client instanceof Zend_Http_Client) {
+        if (!$client instanceof Zend_Gdata_HttpClient) {
             require_once 'Zend/Gdata/App/HttpException.php';
-            throw new Zend_Gdata_App_HttpException('Client is not an instance of Zend_Http_Client.');
+            throw new Zend_Gdata_App_HttpException('Client is not an instance of Zend_Gdata_HttpClient.');
         }
         $useragent = 'Zend_Framework_Gdata/' . Zend_Version::VERSION;
         $client->setConfig(array(

+ 12 - 0
tests/Zend/Gdata/AuthSubTest.php

@@ -260,4 +260,16 @@ Secure=false");
         $this->assertEquals($this->token, $client->getAuthSubToken());
     }
     
+    /**
+     * @group ZF-11351
+     * @expectedException Zend_Gdata_App_HttpException
+     */
+    public function testAuthSubGetHttpClientShouldThrowExceptionOnVanillaHttpClient()
+    {
+        $client = new Zend_Http_Client();
+        $client->setUri('http://example.com/AuthSub');
+        $gdclient = Zend_Gdata_AuthSub::getHttpClient('FakeToken', $client);
+        $this->fail('Expected exception Zend_Gdata_App_HttpException not raised!');
+    }
+    
 }