/** * Get a basic prepared HTTP client for use * * @param string $mode Must be "subscribe" or "unsubscribe" * @return Zend_Http_Client */ protected function _getHttpClient() { $client = Zend_Feed_Pubsubhubbub::getHttpClient(); $client->setMethod(Zend_Http_Client::POST); $client->setConfig(array('useragent' => 'Zend_Feed_Pubsubhubbub_Subscriber/' . Zend_Version::VERSION)); return $client; }
public function testCanSetCustomHttpClient() { Zend_Feed_Pubsubhubbub::setHttpClient(new Test_Http_Client_Pubsub()); $this->assertType('Test_Http_Client_Pubsub', Zend_Feed_Pubsubhubbub::getHttpClient()); }
public function testNotifiesHubAndReportsFail() { Zend_Feed_Pubsubhubbub::setHttpClient(new Zend_Feed_Pubsubhubbub_PublisherTest_ClientFail()); $client = Zend_Feed_Pubsubhubbub::getHttpClient(); $this->_publisher->addHubUrl('http://www.example.com/hub'); $this->_publisher->addUpdatedTopicUrl('http://www.example.com/topic'); $this->_publisher->setParameter('foo', 'bar'); $this->_publisher->notifyAll(); $this->assertFalse($this->_publisher->isSuccess()); }
/** * Get a basic prepared HTTP client for use * * @return Zend_Http_Client */ protected function _getHttpClient() { $client = Zend_Feed_Pubsubhubbub::getHttpClient(); $client->setMethod(Zend_Http_Client::POST); $client->setConfig(array('useragent' => 'Zend_Feed_Pubsubhubbub_Publisher/' . Zend_Version::VERSION)); $params = array(); $params[] = 'hub.mode=publish'; $topics = $this->getUpdatedTopicUrls(); if (empty($topics)) { require_once 'Zend/Feed/Pubsubhubbub/Exception.php'; throw new Zend_Feed_Pubsubhubbub_Exception('No updated topic URLs' . ' have been set'); } foreach ($topics as $topicUrl) { $params[] = 'hub.url=' . urlencode($topicUrl); } $optParams = $this->getParameters(); foreach ($optParams as $name => $value) { $params[] = urlencode($name) . '=' . urlencode($value); } $paramString = implode('&', $params); $client->setRawData($paramString, 'application/x-www-form-urlencoded'); return $client; }
public function testCanSetCustomHttpClient() { Zend_Feed_Pubsubhubbub::setHttpClient(new Test_Http_Client_Pubsub()); $this->assertTrue(Zend_Feed_Pubsubhubbub::getHttpClient() instanceof Test_Http_Client_Pubsub); }