| 7 aggregator.test | AggregatorTestCase::updateFeedItems(&$feed, $expected_count) |
| 8 aggregator.test | AggregatorTestCase::updateFeedItems(&$feed, $expected_count) |
Update feed items (simulate click to admin/config/services/aggregator/update/$fid).
Parameters
$feed: Feed object representing the feed.
$expected_count: Expected number of feed items.
File
- modules/
aggregator/ aggregator.test, line 90 - Tests for aggregator.module.
Code
function updateFeedItems(&$feed, $expected_count) {
// First, let's ensure we can get to the rss xml.
$this->drupalGet($feed->url);
$this->assertResponse(200, t('!url is reachable.', array('!url' => $feed->url)));
// Attempt to access the update link directly without an access token.
$this->drupalGet('admin/config/services/aggregator/update/' . $feed->fid);
$this->assertResponse(403);
// Refresh the feed (simulated link click).
$this->drupalGet('admin/config/services/aggregator');
$this->clickLink('update items');
// Ensure we have the right number of items.
$result = db_query('SELECT iid FROM {aggregator_item} WHERE fid = :fid', array(':fid' => $feed->fid));
$items = array();
$feed->items = array();
foreach ($result as $item) {
$feed->items[] = $item->iid;
}
$feed->item_count = count($feed->items);
$this->assertEqual($expected_count, $feed->item_count, t('Total items in feed equal to the total items in database (!val1 != !val2)', array('!val1' => $expected_count, '!val2' => $feed->item_count)));
}
Login or register to post comments