/**
  * @dataProvider magicWordsProvider
  */
 public function testFindMagicWordInText($magicWord, $text, $expectedText, $expectedWord)
 {
     $instance = new MagicWordsFinder();
     $word = $instance->findMagicWordInText($magicWord, $text);
     $this->assertInternalType('string', $word);
     $this->assertEquals($expectedWord, $word);
     $this->assertEquals($expectedText, $text);
 }
 /**
  * @dataProvider magicWordDataProvider
  */
 public function testStripMagicWords($namespace, $text, array $expected)
 {
     $parserData = new ParserData(Title::newFromText(__METHOD__, $namespace), new ParserOutput());
     $magicWordsFinder = new MagicWordsFinder($parserData->getOutput());
     $instance = new InTextAnnotationParser($parserData, $magicWordsFinder, new RedirectTargetFinder());
     $instance->parse($text);
     $this->assertEquals($expected, $magicWordsFinder->getMagicWords());
 }
Пример #3
0
 protected function doStripMagicWordsFromText(&$text)
 {
     $words = array();
     $this->magicWordsFinder->setOutput($this->parserData->getOutput());
     $magicWords = array('SMW_NOFACTBOX', 'SMW_SHOWFACTBOX');
     Hooks::run('SMW::Parser::BeforeMagicWordsFinder', array(&$magicWords));
     foreach ($magicWords as $magicWord) {
         $words[] = $this->magicWordsFinder->findMagicWordInText($magicWord, $text);
     }
     $this->magicWordsFinder->pushMagicWordsToParserOutput($words);
     return $words;
 }