/** * @covers PHP\Manipulator\ClosureFactory::getHasValueClosure */ public function testGetHasValueClosureWithArray() { $closure = ClosureFactory::getHasValueClosure(array(' ', 'foo')); $this->assertValidTokenMatchingClosure($closure); $this->assertTrue($closure(new Token(' ', T_WHITESPACE))); $this->assertTrue($closure(new Token('foo', T_WHITESPACE))); $this->assertFalse($closure(new Token('blub', T_STRING))); $this->assertFalse($closure(new Token('bla', T_STRING))); }
/** * @return array */ public function isFollowedByTokenMatchedByClosureProvider() { $data = array(); $path = '/AHelper/isFollowedByTokenMatchedByClosure/'; $container = $this->getContainerFromFixture($path . 'input0.php'); $data[] = array($container->getIterator()->seekToToken($container[21]), ClosureFactory::getHasValueClosure('echo'), array(T_WHITESPACE, T_COMMENT, T_DOC_COMMENT), false); $data[] = array($container->getIterator()->seekToToken($container[21]), ClosureFactory::getHasValueClosure('echo'), array(T_WHITESPACE, T_COMMENT, T_DOC_COMMENT, null), true); return $data; }
/** * @param \PHP\Manipulator\TokenContainer\Iterator $iterator * @param string $value * @param array $allowedTypes * @return boolean */ public function isPrecededByTokenValue(Iterator $iterator, $value, array $allowedTypes = array(T_WHITESPACE, T_COMMENT, T_DOC_COMMENT)) { return $this->isPrecededByTokenMatchedByClosure($iterator, ClosureFactory::getHasValueClosure($value), $allowedTypes); }