1.20.x token.test | public TokenUnitTestCase::testGetInvalidTokens() |
Test token_get_invalid_tokens() and token_get_invalid_tokens_by_context().
File
- modules/
simpletest/ tests/ token.test, line 300 - Test integration for the token module.
Class
Code
public function testGetInvalidTokens() {
$tests = array();
$tests[] = array(
'valid tokens' => array(
'[node:title]',
'[node:created:short]',
'[node:created:custom:invalid]',
'[node:created:custom:mm-YYYY]',
'[site:name]',
'[site:slogan]',
'[date:short]',
'[current-user:uid]',
'[current-user:ip-address]',
// Deprecated tokens:
'[node:type]',
'[node:type-name]',
),
'invalid tokens' => array(
'[node:title:invalid]',
'[node:created:invalid]',
'[node:created:short:invalid]',
'[invalid:title]',
'[site:invalid]',
'[user:ip-address]',
'[user:uid]',
'[comment:cid]',
'[date:short]',
),
'types' => array('node'),
);
$tests[] = array(
'valid tokens' => array(
'[node:title]',
'[node:created:short]',
'[node:created:custom:invalid]',
'[node:created:custom:mm-YYYY]',
'[site:name]',
'[site:slogan]',
'[user:uid]',
'[user:ip-address]',
'[date:short]',
'[current-user:uid]',
// Deprecated tokens:
'[node:type]',
'[node:type-name]',
),
'invalid tokens' => array(
'[node:title:invalid]',
'[node:created:invalid]',
'[node:created:short:invalid]',
'[invalid:title]',
'[site:invalid]',
'[comment:cid]',
),
'types' => array('all'),
);
foreach ($tests as $test) {
$tokens = array_merge($test['valid tokens'], $test['invalid tokens']);
shuffle($tokens);
require_once BACKDROP_ROOT . '/core/includes/token.inc';
$invalid_tokens = token_get_invalid_tokens_by_context(implode(' ', $tokens), $test['types']);
sort($invalid_tokens);
sort($test['invalid tokens']);
$this->assertEqual($invalid_tokens, $test['invalid tokens'], 'Invalid tokens detected properly: ' . implode(', ', $invalid_tokens));
}
}