diff --git a/tests/feeds_processor_data.test b/tests/feeds_processor_data.test deleted file mode 100644 index 43b41bc163d693e57ab54f67d813edc92f16a51b..0000000000000000000000000000000000000000 --- a/tests/feeds_processor_data.test +++ /dev/null @@ -1,169 +0,0 @@ - t('RSS import to data records'), - 'description' => t('Tests a feed configuration that is attached to a content type, uses common syndication parser and a node processor. Requires Data module and Views module.'), - 'group' => t('Feeds'), - ); - } - - /** - * Set up test. - */ - public function setUp() { - parent::setUp('feeds', 'feeds_ui', 'ctools', 'job_scheduler', 'data', 'data_ui', 'views'); - $this->drupalLogin( - $this->drupalCreateUser( - array( - 'administer feeds', 'create page content', - ) - ) - ); - } - - /** - * Test node creation, refreshing/deleting feeds and feed items. - */ - public function test() { - - // Create an importer. - $this->createImporterConfiguration('Data feed', 'rss'); - - // Go to edit page and select the data processor. - $edit = array( - 'plugin_key' => 'FeedsDataProcessor', - ); - $this->drupalPost('admin/build/feeds/edit/rss/processor', $edit, 'Save'); - $this->assertPlugins('rss', 'FeedsHTTPFetcher', 'FeedsSyndicationParser', 'FeedsDataProcessor'); - - // Go to mapping page and create a couple of mappings. - $mappings = array( - array( - 'source' => 'guid', - 'target' => 'new:text', - 'unique' => TRUE, - ), - array( - 'source' => 'url', - 'target' => 'new:text', - 'unique' => TRUE, - ), - array( - 'source' => 'timestamp', - 'target' => 'timestamp', // timestamp is an existing target. - 'unique' => FALSE, - ), - array( - 'source' => 'title', - 'target' => 'new:varchar', - 'unique' => FALSE, - ), - array( - 'source' => 'description', - 'target' => 'new:text', - 'unique' => FALSE, - ), - ); - $this->addMappings('rss', $mappings); - - // Verify the mapping configuration. - $config = unserialize(db_result(db_query("SELECT config FROM {feeds_importer} WHERE id = 'rss'"))); - $stored_mappings = $config['processor']['config']['mappings']; - foreach ($mappings as $i => $mapping) { - $this->assertEqual($mapping['source'], $stored_mappings[$i]['source']); - // This is intentional: the target of the stored mapping should have the - // same key as the source, this has to do with the fact that feeds data - // creates storage as the mapping is created. - $this->assertEqual($mapping['source'], $stored_mappings[$i]['target']); - $this->assertEqual($mapping['unique'], $stored_mappings[$i]['unique']); - } - - // Create standard feed node. - $nid = $this->createFeedNode('rss'); - // Assert 10 items aggregated after creation of the node. - $this->assertText('Created 10 items.'); - - // Login with a user with administer data permissions and review aggregated - // content. - $this->drupalLogin( - $this->drupalCreateUser( - array( - 'administer data tables', - 'administer feeds', - ) - ) - ); - - // Assert accuracy of aggregated information. - $this->drupalGet('admin/content/data/view/feeds_data_rss'); - $this->assertText('Open Atrium Translation Workflow: Two Way Translation Updates'); - $this->assertText('A new translation process for Open Atrium & integration with Localize Drupal'); - $this->assertText('Week in DC Tech: October 5th Edition'); - $this->assertText('There are some great technology events happening this week'); - $this->assertText('Mapping Innovation at the World Bank with Open Atrium'); - $this->assertText('is being used as a base platform for collaboration at the World Bank because of its feature flexibility'); - $this->assertText('September GeoDC Meetup Tonight'); - $this->assertText('Today is the last Wednesday of the month'); - $this->assertText('Week in DC Tech: September 28th Edition'); - $this->assertText('Looking to geek out this week? There are a bunch of'); - $this->assertText('Open Data for Microfinance: The New MIXMarket.org'); - $this->assertText('There are profiles for every country that the MIX Market is hosting.'); - $this->assertText('Integrating the Siteminder Access System in an Open Atrium-based Intranet'); - $this->assertText('In addition to authentication, the Siteminder system'); - $this->assertText('Week in DC Tech: September 21 Edition'); - $this->assertText('an interesting variety of technology events happening in Washington, DC '); - $this->assertText('s Software Freedom Day: Impressions & Photos'); - $this->assertText('Presenting on Features in Drupal and Open Atrium'); - $this->assertText('Scaling the Open Atrium UI'); - $this->assertText('The first major change is switching'); - - // Assert DB status. - $count = db_result(db_query("SELECT COUNT(*) FROM {feeds_data_rss}")); - $this->assertEqual($count, 10, 'Accurate number of items in database.'); - - // Import again. - $this->drupalPost('node/'. $nid .'/import', array(), 'Import'); - $this->assertText('There are no new items.'); - - // Assert DB status, there still shouldn't be more than 10 items. - $count = db_result(db_query("SELECT COUNT(*) FROM {feeds_data_rss}")); - $this->assertEqual($count, 10, 'Accurate number of items in database.'); - - // Now delete all items. - $this->drupalPost('node/'. $nid .'/delete-items', array(), 'Delete'); - $this->assertText('All items have been deleted.'); - - // Assert DB status, now there should be no items. - $count = db_result(db_query("SELECT COUNT(*) FROM {feeds_data_rss}")); - $this->assertEqual($count, 0, 'Accurate number of items in database.'); - - // Import again, we should find new content. - $this->drupalPost('node/'. $nid .'/import', array(), 'Import'); - $this->assertText('Created 10 items.'); - - // Assert DB status, there should be 10 again. - $count = db_result(db_query("SELECT COUNT(*) FROM {feeds_data_rss}")); - $this->assertEqual($count, 10, 'Accurate number of items in database.'); - - // @todo Standalone import form testing. - // @todo Create a second feed and test. - } -}