示例#1
0
 public function testAlternativesExtractor()
 {
     $matcher = new Matcher();
     $this->assertEquals(['name', 'alternate'], $matcher->extractAlternatives('[name|alternate]'));
     $this->assertEquals(['name', 'alternate', 'last'], $matcher->extractAlternatives('[name|alternate||last]'));
     // missing trailing ']'
     $this->expectsException(function () use($matcher) {
         $matcher->extractAlternatives('[invalid|syntax');
     }, Exception::class);
     // no alternatives
     $this->expectsException(function () use($matcher) {
         $matcher->extractAlternatives('[]');
     }, Exception::class);
     // no alternatives
     $this->expectsException(function () use($matcher) {
         $matcher->extractAlternatives('[|]');
     }, Exception::class);
 }