Backup of db before drupal security update
[yaffs-website] / web / core / modules / aggregator / src / Tests / AggregatorCronTest.php
1 <?php
2
3 namespace Drupal\aggregator\Tests;
4
5 /**
6  * Update feeds on cron.
7  *
8  * @group aggregator
9  */
10 class AggregatorCronTest extends AggregatorTestBase {
11   /**
12    * Adds feeds and updates them via cron process.
13    */
14   public function testCron() {
15     // Create feed and test basic updating on cron.
16     $this->createSampleNodes();
17     $feed = $this->createFeed();
18     $this->cronRun();
19     $this->assertEqual(5, db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', [':fid' => $feed->id()])->fetchField());
20     $this->deleteFeedItems($feed);
21     $this->assertEqual(0, db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', [':fid' => $feed->id()])->fetchField());
22     $this->cronRun();
23     $this->assertEqual(5, db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', [':fid' => $feed->id()])->fetchField());
24
25     // Test feed locking when queued for update.
26     $this->deleteFeedItems($feed);
27     db_update('aggregator_feed')
28       ->condition('fid', $feed->id())
29       ->fields([
30         'queued' => REQUEST_TIME,
31       ])
32       ->execute();
33     $this->cronRun();
34     $this->assertEqual(0, db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', [':fid' => $feed->id()])->fetchField());
35     db_update('aggregator_feed')
36       ->condition('fid', $feed->id())
37       ->fields([
38         'queued' => 0,
39       ])
40       ->execute();
41     $this->cronRun();
42     $this->assertEqual(5, db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', [':fid' => $feed->id()])->fetchField());
43   }
44
45 }