Flitch\Rule\Naming\Constants::visitToken PHP Method

visitToken() public method

visitToken(): defined by TokenRuleInterface.
See also: TokenRuleInterface::visitToken()
public visitToken ( File $file ) : void
$file Flitch\File\File
return void
    public function visitToken(File $file)
    {
        if (!$file->seekTokenType(T_STRING, false, ';')) {
            return;
        }
        $token = $file->current();
        if (!preg_match('(^' . $this->format . '$)', $token->getLexeme())) {
            $this->addViolation($file, $token->getLine(), $token->getColumn(), sprintf('Constant name does not match format "%s"', $this->format));
        }
    }

Usage Example

Example #1
0
 public function testConstantNaming()
 {
     $tokenizer = new Tokenizer();
     $file = $tokenizer->tokenize('foo.php', "<?php class foo { const BAR = 'baz'; const BAZ = 'bar'; }");
     $file->rewind();
     $file->seekTokenType(T_CONST);
     $rule = new Constants();
     $rule->setFormat('BAZ');
     $rule->visitToken($file);
     $this->assertRuleViolations($file, array(array('line' => 1, 'column' => 25, 'message' => 'Constant name does not match format "BAZ"', 'source' => 'Flitch\\Naming\\Constants')));
 }