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 }
|