public function testSubscribeErrorInvalidParameters() { $subscribe_xml = file_get_contents(dirname(__FILE__) . '/data/savedsearch_error_invalid_parameters.xml'); $this->oauthClient->expects($this->once())->method('authenticatedPostAsXml')->with('savedSearch/subscribe', $this->savedSearch->toPostData())->will($this->returnValue($subscribe_xml)); $this->setExpectedException('CultureFeed_Exception', '\'name\' is a required parameter'); $this->savedSearches->subscribe($this->savedSearch); }
/** * {@inheritdoc} */ public function subscribe(CultureFeed_SavedSearches_SavedSearch $savedSearch, $use_auth = TRUE) { if ($use_auth) { $result = $this->oauth_client->authenticatedPostAsXml('savedSearch/subscribe', $savedSearch->toPostData()); } else { $result = $this->oauth_client->consumerPostAsXml('savedSearch/subscribe', $savedSearch->toPostData()); } $xml_element = $this->getXmlElementFromXmlString($result); $search_element = $xml_element->xpath('/response/savedSearch'); if (empty($search_element)) { $this->throwXmlElementException($xml_element, $result); } return $this->parseSavedSearch($search_element[0]); }
public function testFrequencyValidation() { // First test the validation method itself. $validFrequencyConstant = SavedSearch::DAILY; $this->assertTrue(SavedSearch::validateFrequency($validFrequencyConstant)); $validFrequencyString = 'ASAP'; $this->assertTrue(SavedSearch::validateFrequency($validFrequencyString)); $invalidFrequencyString = 'SOMETIMES'; $this->assertFalse(SavedSearch::validateFrequency($invalidFrequencyString)); $invalidFrequencyObject = new stdClass(); $this->assertFalse(SavedSearch::validateFrequency($invalidFrequencyObject)); // Next test the setting of a frequency. $savedSearch = new SavedSearch(); // These should not throw an exception. $savedSearch->setFrequency($validFrequencyConstant); $savedSearch->setFrequency($validFrequencyString); // These should throw exceptions. $this->setExpectedException('InvalidArgumentException'); $savedSearch->setFrequency($invalidFrequencyString); $this->setExpectedException('InvalidArgumentException'); $savedSearch->setFrequency($invalidFrequencyObject); }