function StatisticsTokenReplaceTestCase::testStatisticsTokenReplacement in Drupal 7
Creates a node, then tests the statistics tokens generated from it.
File
- modules/
statistics/ statistics.test, line 473 - Tests for the Statistics module.
Class
- StatisticsTokenReplaceTestCase
- Tests statistics token replacement in strings.
Code
function testStatisticsTokenReplacement() {
global $language;
// Create user and node.
$user = $this
->drupalCreateUser(array(
'create page content',
));
$this
->drupalLogin($user);
$node = $this
->drupalCreateNode(array(
'type' => 'page',
'uid' => $user->uid,
));
// Hit the node.
$this
->drupalGet('node/' . $node->nid);
$statistics = statistics_get($node->nid);
// Generate and test tokens.
$tests = array();
$tests['[node:total-count]'] = 1;
$tests['[node:day-count]'] = 1;
$tests['[node:last-view]'] = format_date($statistics['timestamp']);
$tests['[node:last-view:short]'] = format_date($statistics['timestamp'], 'short');
// Test to make sure that we generated something for each token.
$this
->assertFalse(in_array(0, array_map('strlen', $tests)), 'No empty tokens generated.');
foreach ($tests as $input => $expected) {
$output = token_replace($input, array(
'node' => $node,
), array(
'language' => $language,
));
$this
->assertEqual($output, $expected, format_string('Statistics token %token replaced.', array(
'%token' => $input,
)));
}
}