/**
  * @dataProvider patternProvider
  */
 public function testWordTokenGetsCorrectPattern($pattern, $word, $result, $quality)
 {
     $t = new WordToken($word);
     $t->addPattern($pattern);
     $this->assertAttributeEquals($pattern, '_pattern', $t);
     $this->assertEquals($result, $t->getMergedPattern($quality));
 }
 public function testTokenReturnsCorrectClass()
 {
     new Token('test');
     $tokenA = new WordToken('a');
     $this->assertEquals('Org\\Heigl\\Hyphenator\\Tokenizer\\WordToken', $tokenA->getType());
     $tokenB = new NonWordToken('a');
     $this->assertEquals('Org\\Heigl\\Hyphenator\\Tokenizer\\NonWordToken', $tokenB->getType());
     $tokenC = new WhitespaceToken('a');
     $this->assertEquals('Org\\Heigl\\Hyphenator\\Tokenizer\\WhitespaceToken', $tokenC->getType());
 }
 /**
  * @dataProvider filterProvider
  */
 public function testFilter($input, $pattern, $result)
 {
     $f = new NonStandardFilter();
     $o = new Options();
     $t = new t\WordToken($input);
     $t->addPattern($pattern);
     $r = new t\TokenRegistry();
     $r->add($t);
     $o->setHyphen('-');
     $f->setOptions($o);
     $this->assertSame($r, $f->run($r));
     $this->assertEquals($result, $r->getTokenWithKey(0)->getHyphenatedContent());
 }