1<?php declare(strict_types=1); 2 3namespace PhpParser\Node; 4 5class IdentifierTest extends \PHPUnit\Framework\TestCase { 6 public function testConstructorThrows() { 7 self::expectException(\InvalidArgumentException::class); 8 new Identifier(''); 9 } 10 11 public function testToString() { 12 $identifier = new Identifier('Foo'); 13 14 $this->assertSame('Foo', (string) $identifier); 15 $this->assertSame('Foo', $identifier->toString()); 16 $this->assertSame('foo', $identifier->toLowerString()); 17 } 18 19 /** @dataProvider provideTestIsSpecialClassName */ 20 public function testIsSpecialClassName($identifier, $expected) { 21 $identifier = new Identifier($identifier); 22 $this->assertSame($expected, $identifier->isSpecialClassName()); 23 } 24 25 public function provideTestIsSpecialClassName() { 26 return [ 27 ['self', true], 28 ['PARENT', true], 29 ['Static', true], 30 ['other', false], 31 ]; 32 } 33} 34