annotate vendor/nikic/php-parser/test/PhpParser/Builder/UseTest.php @ 0:4c8ae668cc8c

Initial import (non-working)
author Chris Cannam
date Wed, 29 Nov 2017 16:09:58 +0000
parents
children 5fb285c0d0e3
rev   line source
Chris@0 1 <?php
Chris@0 2
Chris@0 3 use PhpParser\Builder;
Chris@0 4 use PhpParser\Node\Name;
Chris@0 5 use PhpParser\Node\Stmt;
Chris@0 6
Chris@0 7 class UseTest extends \PHPUnit_Framework_TestCase
Chris@0 8 {
Chris@0 9 protected function createUseBuilder($name, $type = Stmt\Use_::TYPE_NORMAL) {
Chris@0 10 return new Builder\Use_($name, $type);
Chris@0 11 }
Chris@0 12
Chris@0 13 public function testCreation() {
Chris@0 14 $node = $this->createUseBuilder('Foo\Bar')->getNode();
Chris@0 15 $this->assertEquals(new Stmt\Use_(array(
Chris@0 16 new Stmt\UseUse(new Name('Foo\Bar'), 'Bar')
Chris@0 17 )), $node);
Chris@0 18
Chris@0 19 $node = $this->createUseBuilder(new Name('Foo\Bar'))->as('XYZ')->getNode();
Chris@0 20 $this->assertEquals(new Stmt\Use_(array(
Chris@0 21 new Stmt\UseUse(new Name('Foo\Bar'), 'XYZ')
Chris@0 22 )), $node);
Chris@0 23
Chris@0 24 $node = $this->createUseBuilder('foo\bar', Stmt\Use_::TYPE_FUNCTION)->as('foo')->getNode();
Chris@0 25 $this->assertEquals(new Stmt\Use_(array(
Chris@0 26 new Stmt\UseUse(new Name('foo\bar'), 'foo')
Chris@0 27 ), Stmt\Use_::TYPE_FUNCTION), $node);
Chris@0 28 }
Chris@0 29
Chris@0 30 public function testNonExistingMethod() {
Chris@0 31 $this->setExpectedException('LogicException', 'Method "foo" does not exist');
Chris@0 32 $builder = $this->createUseBuilder('Test');
Chris@0 33 $builder->foo();
Chris@0 34 }
Chris@0 35 }