contrib modules security updates
This commit is contained in:
@@ -151,14 +151,14 @@ class FeedsSchedulerTestCase extends FeedsWebTestCase {
|
||||
// Set expire settings, check rescheduling.
|
||||
$max_last = db_query("SELECT MAX(last) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_source_import' AND period = 0")->fetchField();
|
||||
$min_last = db_query("SELECT MIN(last) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_source_import' AND period = 0")->fetchField();
|
||||
$this->assertEqual(0, db_query("SELECT COUNT(*) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_importer_expire' AND last <> 0 AND scheduled = 0")->fetchField());
|
||||
$this->assertEqual(0, db_query("SELECT COUNT(*) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_source_expire'")->fetchField());
|
||||
$this->drupalLogin($this->admin_user);
|
||||
$this->setSettings('syndication', 'FeedsNodeProcessor', array('expire' => 86400));
|
||||
$this->drupalLogout();
|
||||
sleep(1);
|
||||
$this->cronRun();
|
||||
// There should be a feeds_importer_expire job now, and all last fields should be reset.
|
||||
$this->assertEqual(1, db_query("SELECT COUNT(*) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_importer_expire' AND last <> 0 AND scheduled = 0 AND period = 3600")->fetchField());
|
||||
// There should be 20 feeds_source_expire jobs now, and all last fields should be reset.
|
||||
$this->assertEqual(count($nids), db_query("SELECT COUNT(*) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_source_expire' AND last <> 0 AND scheduled = 0 AND period = 3600")->fetchField());
|
||||
$new_max_last = db_query("SELECT MAX(last) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_source_import' AND period = 0")->fetchField();
|
||||
$new_min_last = db_query("SELECT MIN(last) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_source_import' AND period = 0")->fetchField();
|
||||
$this->assertNotEqual($new_max_last, $max_last);
|
||||
@@ -179,18 +179,19 @@ class FeedsSchedulerTestCase extends FeedsWebTestCase {
|
||||
$this->assertNotEqual($new_min_last, $min_last);
|
||||
$this->assertEqual($new_max_last, $new_min_last);
|
||||
$this->assertEqual(0, db_query("SELECT COUNT(*) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_source_import' AND period <> 3600")->fetchField());
|
||||
$this->assertEqual(1, db_query("SELECT COUNT(*) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_importer_expire' AND period = 3600 AND last = :last", array(':last' => $new_min_last))->fetchField());
|
||||
$this->assertEqual(count($nids), db_query("SELECT COUNT(*) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_source_expire' AND period = 3600 AND last = :last", array(':last' => $new_min_last))->fetchField());
|
||||
|
||||
// Delete source, delete importer, check schedule.
|
||||
$this->drupalLogin($this->admin_user);
|
||||
$nid = array_shift($nids);
|
||||
$this->drupalPost("node/$nid/delete", array(), t('Delete'));
|
||||
$this->assertEqual(0, db_query("SELECT COUNT(*) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_source_import' AND id = :nid", array(':nid' => $nid))->fetchField());
|
||||
$this->assertEqual(0, db_query("SELECT COUNT(*) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_source_expire' AND id = :nid", array(':nid' => $nid))->fetchField());
|
||||
$this->assertEqual(count($nids), db_query("SELECT COUNT(*) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_source_import'")->fetchField());
|
||||
$this->assertEqual(1, db_query("SELECT COUNT(*) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_importer_expire' AND id = 0")->fetchField());
|
||||
$this->assertEqual(count($nids), db_query("SELECT COUNT(*) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_source_expire'")->fetchField());
|
||||
|
||||
$this->drupalPost('admin/structure/feeds/syndication/delete', array(), t('Delete'));
|
||||
$this->assertEqual(0, db_query("SELECT COUNT(*) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_importer_expire' AND id = 0")->fetchField());
|
||||
$this->assertEqual(count($nids), db_query("SELECT COUNT(*) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_source_expire'")->fetchField());
|
||||
$this->assertEqual(count($nids), db_query("SELECT COUNT(*) FROM {job_schedule} WHERE type = 'syndication' AND name = 'feeds_source_import'")->fetchField());
|
||||
}
|
||||
|
||||
@@ -226,23 +227,17 @@ class FeedsSchedulerTestCase extends FeedsWebTestCase {
|
||||
|
||||
db_query("UPDATE {job_schedule} SET next = 0");
|
||||
$this->drupalPost('import/node/delete-items', array(), 'Delete');
|
||||
$this->assertEqual(0, db_query("SELECT COUNT(*) FROM {node} WHERE type = 'article'")->fetchField());
|
||||
$node_count = db_query("SELECT COUNT(*) FROM {node} WHERE type = 'article'")->fetchField();
|
||||
$this->assertEqual(0, $node_count);
|
||||
|
||||
// Hit cron (item count / limit) times, assert correct number of articles.
|
||||
for ($i = 0; $i < ceil(86 / $limit); $i++) {
|
||||
// Hit cron for importing, until we have all items.
|
||||
while ($node_count < 86) {
|
||||
$this->cronRun();
|
||||
sleep(1);
|
||||
if ($limit * ($i + 1) < 86) {
|
||||
$count = $limit * ($i + 1);
|
||||
$period = 0; // Import should be rescheduled for ASAP.
|
||||
}
|
||||
else {
|
||||
$count = 86; // We've reached our total of 86.
|
||||
$period = 1800; // Hence we should find the Source's default period.
|
||||
}
|
||||
$this->assertEqual($count, db_query("SELECT COUNT(*) FROM {node} WHERE type = 'article'")->fetchField());
|
||||
$this->assertEqual($period, db_query("SELECT period FROM {job_schedule} WHERE type = 'node' AND id = 0")->fetchField());
|
||||
$node_count = db_query("SELECT COUNT(*) FROM {node} WHERE type = 'article'")->fetchField();
|
||||
}
|
||||
$this->assertEqual(86, db_query("SELECT COUNT(*) FROM {node} WHERE type = 'article'")->fetchField(), 'Number of nodes is correct after batched importing via cron.');
|
||||
// Import should be rescheduled for 1800 seconds.
|
||||
$this->assertEqual(1800, db_query("SELECT period FROM {job_schedule} WHERE type = 'node' AND id = 0")->fetchField());
|
||||
}
|
||||
|
||||
// Delete a couple of nodes, then hit cron again. They should not be replaced
|
||||
|
||||
Reference in New Issue
Block a user