Esempio n. 1
0
 /**
  * Tests the presence of the expected cache tag in various situations.
  */
 function testSearchText()
 {
     $this->drupalLogin($this->searchingUser);
     // Initial page for searching nodes.
     $this->drupalGet('search/node');
     $this->assertCacheTag('config:search.page.node_search');
     $this->assertCacheTag('search_index:node_search');
     $this->assertCacheTag('node_list');
     // Node search results.
     $edit = array();
     $edit['keys'] = 'bike shed';
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertText('bike shed shop');
     $this->assertCacheTag('config:search.page.node_search');
     $this->assertCacheTag('search_index');
     $this->assertCacheTag('search_index:node_search');
     $this->assertCacheTag('node:1');
     $this->assertCacheTag('user:2');
     $this->assertCacheTag('rendered');
     $this->assertCacheTag('node_list');
     // Updating a node should invalidate the search plugin's index cache tag.
     $this->node->title = 'bike shop';
     $this->node->save();
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertText('bike shop');
     $this->assertCacheTag('config:search.page.node_search');
     $this->assertCacheTag('search_index');
     $this->assertCacheTag('search_index:node_search');
     $this->assertCacheTag('node:1');
     $this->assertCacheTag('user:2');
     $this->assertCacheTag('rendered');
     $this->assertCacheTag('node_list');
     // Deleting a node should invalidate the search plugin's index cache tag.
     $this->node->delete();
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertText('Your search yielded no results.');
     $this->assertCacheTag('config:search.page.node_search');
     $this->assertCacheTag('search_index');
     $this->assertCacheTag('search_index:node_search');
     $this->assertCacheTag('node_list');
     // Initial page for searching users.
     $this->drupalGet('search/user');
     $this->assertCacheTag('config:search.page.user_search');
     $this->assertCacheTag('user_list');
     $this->assertNoCacheTag('search_index');
     $this->assertNoCacheTag('search_index:user_search');
     // User search results.
     $edit['keys'] = $this->searchingUser->getUsername();
     $this->drupalPostForm('search/user', $edit, t('Search'));
     $this->assertCacheTag('config:search.page.user_search');
     $this->assertCacheTag('user_list');
     $this->assertCacheTag('user:2');
     $this->assertNoCacheTag('search_index');
     $this->assertNoCacheTag('search_index:user_search');
 }
Esempio n. 2
0
 /**
  * Tests that when a node is deleted, the node counter is deleted too.
  */
 function testDeleteNode()
 {
     $this->config('statistics.settings')->set('count_content_views', 1)->save();
     $this->drupalGet('node/' . $this->testNode->id());
     // Manually calling statistics.php, simulating ajax behavior.
     $nid = $this->testNode->id();
     $post = array('nid' => $nid);
     global $base_url;
     $stats_path = $base_url . '/' . drupal_get_path('module', 'statistics') . '/statistics.php';
     $this->client->post($stats_path, array('body' => $post));
     $result = db_select('node_counter', 'n')->fields('n', array('nid'))->condition('n.nid', $this->testNode->id())->execute()->fetchAssoc();
     $this->assertEqual($result['nid'], $this->testNode->id(), 'Verifying that the node counter is incremented.');
     $this->testNode->delete();
     $result = db_select('node_counter', 'n')->fields('n', array('nid'))->condition('n.nid', $this->testNode->id())->execute()->fetchAssoc();
     $this->assertFalse($result, 'Verifying that the node counter is deleted.');
 }