/**
  * @param Token $firstToken
  * @return bool
  */
 protected function extractObjectPhrase(Token $firstToken)
 {
     if ($firstToken->isNew() && $this->_tokenizer->isMatchingClass('Phrase')) {
         $arguments = $this->_tokenizer->getFunctionArgumentsTokens();
         $phrase = $this->_collectPhrase(array_shift($arguments));
         if (null !== $phrase) {
             $this->_addPhrase($phrase, count($arguments), $this->_file, $firstToken->getLine());
             return true;
         }
     }
     return false;
 }
Esempio n. 2
0
 /**
  * @covers \Magento\Tools\I18n\Parser\Adapter\Php\Tokenizer::isMatchingClass
  */
 public function testIsMatchingClass()
 {
     $class = 'Phrase';
     $this->parseFile();
     $this->assertEquals(false, $this->tokenizer->isMatchingClass($class));
     // new
     $this->assertEquals(true, $this->tokenizer->isMatchingClass($class));
     // \Magento\Framework\Phrase(
     $this->assertEquals(false, $this->tokenizer->isMatchingClass($class));
     // 'Testing'
     $this->assertEquals(false, $this->tokenizer->isMatchingClass($class));
     // )
     $this->assertEquals(false, $this->tokenizer->isMatchingClass($class));
     // ;
     $this->assertEquals(false, $this->tokenizer->isMatchingClass($class));
     // new
     $this->assertEquals(true, $this->tokenizer->isMatchingClass($class));
     // Phrase(
     $this->assertEquals(false, $this->tokenizer->isMatchingClass($class));
     // 'More testing'
     $this->assertEquals(false, $this->tokenizer->isMatchingClass($class));
     // )
     $this->assertEquals(false, $this->tokenizer->isMatchingClass($class));
     // ;
     $this->assertEquals(false, $this->tokenizer->isMatchingClass($class));
     // new
     $this->assertEquals(false, $this->tokenizer->isMatchingClass($class));
     // \Magento\Framework\Object(
     $this->assertEquals(false, $this->tokenizer->isMatchingClass($class));
     // )
     $this->assertEquals(false, $this->tokenizer->isMatchingClass($class));
     // ;
 }