protected function getTestNodeClass(Twig_Parser $parser, $name, $line) {
$env = $parser
->getEnvironment();
$testMap = $env
->getTests();
if (!isset($testMap[$name])) {
$message = sprintf('The test "%s" does not exist', $name);
if ($alternatives = $env
->computeAlternatives($name, array_keys($env
->getTests()))) {
$message = sprintf('%s. Did you mean "%s"', $message, implode('", "', $alternatives));
}
throw new Twig_Error_Syntax($message, $line, $parser
->getFilename());
}
if ($testMap[$name] instanceof Twig_SimpleTest) {
return $testMap[$name]
->getNodeClass();
}
return $testMap[$name] instanceof Twig_Test_Node ? $testMap[$name]
->getClass() : 'Twig_Node_Expression_Test';
}