1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- <?php
- namespace spec\Prophecy\Doubler\ClassPatch;
- use PhpSpec\ObjectBehavior;
- use Prophecy\Argument;
- use Prophecy\Doubler\Generator\Node\MethodNode;
- class KeywordPatchSpec extends ObjectBehavior
- {
- function it_is_a_patch()
- {
- $this->shouldBeAnInstanceOf('Prophecy\Doubler\ClassPatch\ClassPatchInterface');
- }
- function its_priority_is_50()
- {
- $this->getPriority()->shouldReturn(50);
- }
- /**
- * @param \Prophecy\Doubler\Generator\Node\ClassNode $node
- * @param \Prophecy\Doubler\Generator\Node\MethodNode $method1
- * @param \Prophecy\Doubler\Generator\Node\MethodNode $method2
- * @param \Prophecy\Doubler\Generator\Node\MethodNode $method3
- */
- function it_will_remove_echo_and_eval_methods($node, $method1, $method2, $method3)
- {
- $node->removeMethod('eval')->shouldBeCalled();
- $node->removeMethod('echo')->shouldBeCalled();
- $method1->getName()->willReturn('echo');
- $method2->getName()->willReturn('eval');
- $method3->getName()->willReturn('notKeyword');
- $node->getMethods()->willReturn(array(
- 'echo' => $method1,
- 'eval' => $method2,
- 'notKeyword' => $method3,
- ));
- $this->apply($node);
- }
- }
|