annotate vendor/nikic/php-parser/test/PhpParser/Node/Stmt/ClassTest.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 ClassTest extends \PHPUnit\Framework\TestCase
Chris@0 6 {
Chris@0 7 public function testIsAbstract() {
Chris@13 8 $class = new Class_('Foo', ['type' => Class_::MODIFIER_ABSTRACT]);
Chris@0 9 $this->assertTrue($class->isAbstract());
Chris@0 10
Chris@0 11 $class = new Class_('Foo');
Chris@0 12 $this->assertFalse($class->isAbstract());
Chris@0 13 }
Chris@0 14
Chris@0 15 public function testIsFinal() {
Chris@13 16 $class = new Class_('Foo', ['type' => Class_::MODIFIER_FINAL]);
Chris@0 17 $this->assertTrue($class->isFinal());
Chris@0 18
Chris@0 19 $class = new Class_('Foo');
Chris@0 20 $this->assertFalse($class->isFinal());
Chris@0 21 }
Chris@0 22
Chris@0 23 public function testGetMethods() {
Chris@13 24 $methods = [
Chris@0 25 new ClassMethod('foo'),
Chris@0 26 new ClassMethod('bar'),
Chris@0 27 new ClassMethod('fooBar'),
Chris@13 28 ];
Chris@13 29 $class = new Class_('Foo', [
Chris@13 30 'stmts' => [
Chris@13 31 new TraitUse([]),
Chris@0 32 $methods[0],
Chris@13 33 new ClassConst([]),
Chris@0 34 $methods[1],
Chris@13 35 new Property(0, []),
Chris@0 36 $methods[2],
Chris@13 37 ]
Chris@13 38 ]);
Chris@0 39
Chris@0 40 $this->assertSame($methods, $class->getMethods());
Chris@0 41 }
Chris@0 42
Chris@0 43 public function testGetMethod() {
Chris@0 44 $methodConstruct = new ClassMethod('__CONSTRUCT');
Chris@0 45 $methodTest = new ClassMethod('test');
Chris@13 46 $class = new Class_('Foo', [
Chris@13 47 'stmts' => [
Chris@13 48 new ClassConst([]),
Chris@0 49 $methodConstruct,
Chris@13 50 new Property(0, []),
Chris@0 51 $methodTest,
Chris@13 52 ]
Chris@13 53 ]);
Chris@0 54
Chris@0 55 $this->assertSame($methodConstruct, $class->getMethod('__construct'));
Chris@0 56 $this->assertSame($methodTest, $class->getMethod('test'));
Chris@0 57 $this->assertNull($class->getMethod('nonExisting'));
Chris@0 58 }
Chris@0 59 }