diff --git a/feeds_ui/feeds_ui.test b/feeds_ui/feeds_ui.test
index 7378b91..e0a56bd 100644
--- a/feeds_ui/feeds_ui.test
+++ b/feeds_ui/feeds_ui.test
@@ -22,6 +22,21 @@ class FeedsUIUserInterfaceTestCase extends FeedsWebTestCase {
   }
 
   /**
+   * UI functionality tests on disabled feeds.
+   */
+  public function testEditDisabledImporter() {
+    // Create an importer.
+    $this->createImporterConfiguration('Test feed', 'test_feed');
+    // Disable the importer.
+    $edit = array(
+      'test_feed' => FALSE,
+    );
+    $this->drupalPost('admin/structure/feeds', $edit, t('Save'));
+    // Try to edit the importer.
+    $this->doEditFeedsConfiguration('Test feed', 'test_feed');
+  }
+
+  /**
    * UI functionality tests on
    * feeds_ui_overview(),
    * feeds_ui_create_form(),
@@ -32,21 +47,10 @@ class FeedsUIUserInterfaceTestCase extends FeedsWebTestCase {
     // Create an importer.
     $this->createImporterConfiguration('Test feed', 'test_feed');
 
-    // Assert UI elements.
-    $this->drupalGet('admin/structure/feeds/test_feed');
-    $this->assertText('Basic settings');
-    $this->assertText('Fetcher');
-    $this->assertText('HTTP Fetcher');
-    $this->assertText('Parser');
-    $this->assertText('Common syndication parser');
-    $this->assertText('Processor');
-    $this->assertText('Node processor');
-    $this->assertText('Getting started');
-    $this->assertRaw('admin/structure/feeds/test_feed/settings');
-    $this->assertRaw('admin/structure/feeds/test_feed/settings/FeedsNodeProcessor');
-    $this->assertRaw('admin/structure/feeds/test_feed/fetcher');
-    $this->assertRaw('admin/structure/feeds/test_feed/parser');
-    $this->assertRaw('admin/structure/feeds/test_feed/processor');
+    // Try to edit the importer.
+    $this->doEditFeedsConfiguration('Test feed', 'test_feed');
+
+    // Check if importer is available on /import.
     $this->drupalGet('import');
     $this->assertText('Basic page');
 
@@ -157,4 +161,31 @@ class FeedsUIUserInterfaceTestCase extends FeedsWebTestCase {
     $this->assertTrue($config['skip_hash_check']);
   }
 
+  /**
+   *  Edit an importer configuration
+   *
+   * @param $name
+   *   The natural name of the feed.
+   * @param $id
+   *   The persistent id of the feed.
+   */
+  protected function doEditFeedsConfiguration($name = 'Syndication', $id = 'syndication') {
+    // Assert UI elements.
+    $this->drupalGet('admin/structure/feeds/'. $id);
+    $this->assertText($name);
+    $this->assertText('Basic settings');
+    $this->assertText('Fetcher');
+    $this->assertText('HTTP Fetcher');
+    $this->assertText('Parser');
+    $this->assertText('Common syndication parser');
+    $this->assertText('Processor');
+    $this->assertText('Node processor');
+    $this->assertText('Getting started');
+    $this->assertRaw('admin/structure/feeds/'. $id .'/settings');
+    $this->assertRaw('admin/structure/feeds/'. $id .'/settings/FeedsNodeProcessor');
+    $this->assertRaw('admin/structure/feeds/'. $id .'/fetcher');
+    $this->assertRaw('admin/structure/feeds/'. $id .'/parser');
+    $this->assertRaw('admin/structure/feeds/'. $id .'/processor');
+  }
+
 }
diff --git a/tests/feeds_scheduler.test b/tests/feeds_scheduler.test
index 3eef89c..0429aef 100644
--- a/tests/feeds_scheduler.test
+++ b/tests/feeds_scheduler.test
@@ -19,71 +19,39 @@ class FeedsSchedulerTestCase extends FeedsWebTestCase {
   }
 
   /**
-   * Test scheduling on cron.
+   * Test scheduling of disabled import on cron.
    */
-  public function testScheduling() {
-    // Create importer configuration.
-    $this->createImporterConfiguration();
-    $this->addMappings('syndication',
-      array(
-        0 => array(
-          'source' => 'title',
-          'target' => 'title',
-          'unique' => FALSE,
-        ),
-        1 => array(
-          'source' => 'description',
-          'target' => 'body',
-        ),
-        2 => array(
-          'source' => 'timestamp',
-          'target' => 'created',
-        ),
-        3 => array(
-          'source' => 'url',
-          'target' => 'url',
-          'unique' => TRUE,
-        ),
-        4 => array(
-          'source' => 'guid',
-          'target' => 'guid',
-          'unique' => TRUE,
-        ),
-      )
-    );
+  public function testSchedulingWithDisabledImporter() {
+    // Initialize scheduling
+    $init = $this->initSyndication();
 
-    // Create 10 feed nodes. Turn off import on create before doing that.
+    // Disable syndication feed so cron doesn't import nodes
+    $this->drupalLogin($this->admin_user);
     $edit = array(
-      'import_on_create' => FALSE,
+      'syndication' => FALSE,
     );
-    $this->drupalPost('admin/structure/feeds/syndication/settings', $edit, 'Save');
-    $this->assertText('Do not import on submission');
-
-    $nids = $this->createFeedNodes();
-    // This implicitly tests the import_on_create node setting being 0.
-    $this->assertTrue($nids[0] == 1 && $nids[1] == 2, 'Node ids sequential.');
-
-    // Check whether feed got properly added to scheduler.
-    foreach ($nids as $nid) {
-      $this->assertEqual(1, db_query("SELECT COUNT(*) FROM {job_schedule} WHERE type = 'syndication' AND id = :nid AND name = 'feeds_source_import' AND last <> 0 AND scheduled = 0 AND period = 1800 AND periodic = 1", array(':nid' => $nid))->fetchField());
-    }
-
-    // Take time for comparisons.
-    $time = time();
-    sleep(1);
-
-    // Log out and run cron, no changes.
+    $this->drupalPost('admin/structure/feeds', $edit, 'Save');
     $this->drupalLogout();
     $this->cronRun();
-    $count = db_query("SELECT COUNT(*) FROM {job_schedule} WHERE last > :time", array(':time' => $time))->fetchField();
-    $this->assertEqual($count, 0, '0 feeds refreshed on cron.');
+    $this->cronRun();
+
+    // There should be 0 article nodes in the database.
+    $count = db_query("SELECT COUNT(*) FROM {node} WHERE type = 'article' AND status = 1")->fetchField();
+    $this->assertEqual($count, 0, 'There are 0 article nodes aggregated.');
+  }
+
+  /**
+   * Test scheduling of enabled import on cron.
+   */
+  public function testScheduling() {
+    // Initialize scheduling
+    $init = $this->initSyndication();
+    $time = $init['time'];
+    $nids = $init['nids'];
+    $count = $init['count'];
 
-    // Set next time to 0 to simulate updates.
-    // There should be 2 x job_schedule_num (= 10) feeds updated now.
-    db_query("UPDATE {job_schedule} SET next = 0");
     $this->cronRun();
     $this->cronRun();
-
     // There should be feeds_schedule_num X 2 (= 20) feeds updated now.
     $schedule = array();
     $rows = db_query("SELECT id, last, scheduled FROM {job_schedule} WHERE last > :time", array(':time' => $time));
@@ -250,4 +218,74 @@ class FeedsSchedulerTestCase extends FeedsWebTestCase {
     $this->cronRun();
     $this->assertEqual(84, db_query("SELECT COUNT(*) FROM {node} WHERE type = 'article'")->fetchField());
   }
+
+  /**
+   * Initialize scheduling.
+   */
+  protected function initSyndication() {
+    // Create importer configuration.
+    $this->createImporterConfiguration();
+    $this->addMappings('syndication',
+      array(
+        0 => array(
+          'source' => 'title',
+          'target' => 'title',
+          'unique' => FALSE,
+        ),
+        1 => array(
+          'source' => 'description',
+          'target' => 'body',
+        ),
+        2 => array(
+          'source' => 'timestamp',
+          'target' => 'created',
+        ),
+        3 => array(
+          'source' => 'url',
+          'target' => 'url',
+          'unique' => TRUE,
+        ),
+        4 => array(
+          'source' => 'guid',
+          'target' => 'guid',
+          'unique' => TRUE,
+        ),
+      )
+    );
+
+    // Create 10 feed nodes. Turn off import on create before doing that.
+    $edit = array(
+      'import_on_create' => FALSE,
+    );
+    $this->drupalPost('admin/structure/feeds/syndication/settings', $edit, 'Save');
+    $this->assertText('Do not import on submission');
+
+    $nids = $this->createFeedNodes();
+    // This implicitly tests the import_on_create node setting being 0.
+    $this->assertTrue($nids[0] == 1 && $nids[1] == 2, 'Node ids sequential.');
+
+    // Check whether feed got properly added to scheduler.
+    foreach ($nids as $nid) {
+      $this->assertEqual(1, db_query("SELECT COUNT(*) FROM {job_schedule} WHERE type = 'syndication' AND id = :nid AND name = 'feeds_source_import' AND last <> 0 AND scheduled = 0 AND period = 1800 AND periodic = 1", array(':nid' => $nid))->fetchField());
+    }
+
+    // Take time for comparisons.
+    $time = time();
+    sleep(1);
+
+    // Log out and run cron, no changes.
+    $this->drupalLogout();
+    $this->cronRun();
+    $count = db_query("SELECT COUNT(*) FROM {job_schedule} WHERE last > :time", array(':time' => $time))->fetchField();
+    $this->assertEqual($count, 0, '0 feeds refreshed on cron.'. $count);
+
+    // Set next time to 0 to simulate updates.
+    db_query("UPDATE {job_schedule} SET next = 0");
+
+    return array(
+      'time' => $time,
+      'nids' => $nids,
+      'count' => $count,
+    );
+  }
 }
