annotate vendor/nikic/php-parser/test/PhpParser/Node/Stmt/PropertyTest.php @ 1:1a348b17ec81

Logo and header background
author Chris Cannam
date Thu, 30 Nov 2017 14:56:35 +0000
parents 4c8ae668cc8c
children 5fb285c0d0e3
rev   line source
Chris@0 1 <?php
Chris@0 2
Chris@0 3 namespace PhpParser\Node\Stmt;
Chris@0 4
Chris@0 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@0 13 array() // 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@0 20 $node = new Property(0, array());
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@0 29 $node = new Property(Class_::MODIFIER_STATIC, array());
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@0 37 return array(
Chris@0 38 array('public'),
Chris@0 39 array('protected'),
Chris@0 40 array('private'),
Chris@0 41 array('static'),
Chris@0 42 );
Chris@0 43 }
Chris@0 44 }