annotate vendor/nikic/php-parser/test/PhpParser/Node/Stmt/PropertyTest.php @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 129ea1e6d783
children
rev   line source
Chris@13 1 <?php declare(strict_types=1);
Chris@0 2
Chris@0 3 namespace PhpParser\Node\Stmt;
Chris@0 4
Chris@17 5 class PropertyTest extends \PHPUnit\Framework\TestCase
Chris@0 6 {
Chris@0 7 /**
Chris@0 8 * @dataProvider provideModifiers
Chris@0 9 */
Chris@0 10 public function testModifiers($modifier) {
Chris@0 11 $node = new Property(
Chris@0 12 constant('PhpParser\Node\Stmt\Class_::MODIFIER_' . strtoupper($modifier)),
Chris@13 13 [] // invalid
Chris@0 14 );
Chris@0 15
Chris@0 16 $this->assertTrue($node->{'is' . $modifier}());
Chris@0 17 }
Chris@0 18
Chris@0 19 public function testNoModifiers() {
Chris@13 20 $node = new Property(0, []);
Chris@0 21
Chris@0 22 $this->assertTrue($node->isPublic());
Chris@0 23 $this->assertFalse($node->isProtected());
Chris@0 24 $this->assertFalse($node->isPrivate());
Chris@0 25 $this->assertFalse($node->isStatic());
Chris@0 26 }
Chris@0 27
Chris@0 28 public function testStaticImplicitlyPublic() {
Chris@13 29 $node = new Property(Class_::MODIFIER_STATIC, []);
Chris@0 30 $this->assertTrue($node->isPublic());
Chris@0 31 $this->assertFalse($node->isProtected());
Chris@0 32 $this->assertFalse($node->isPrivate());
Chris@0 33 $this->assertTrue($node->isStatic());
Chris@0 34 }
Chris@0 35
Chris@0 36 public function provideModifiers() {
Chris@13 37 return [
Chris@13 38 ['public'],
Chris@13 39 ['protected'],
Chris@13 40 ['private'],
Chris@13 41 ['static'],
Chris@13 42 ];
Chris@0 43 }
Chris@0 44 }