/** * @dataProvider getTestedImplementations * * {@inheritDoc} */ public function testGeneratesValidCode($className) { $reflectionClass = new ReflectionClass($className); if ($reflectionClass->isInterface()) { // @todo interfaces *may* be proxied by deferring property localization to the constructor (no hardcoding) $this->setExpectedException('ProxyManager\\Exception\\InvalidProxiedClassException'); return parent::testGeneratesValidCode($className); } if (!method_exists('Closure', 'bind') && $reflectionClass->getProperties(ReflectionProperty::IS_PRIVATE)) { $this->setExpectedException('ProxyManager\\Exception\\UnsupportedProxiedClassException'); } return parent::testGeneratesValidCode($className); }
/** * @dataProvider getTestedImplementations * * {@inheritDoc} */ public function testGeneratesValidCode($className) { $reflectionClass = new ReflectionClass($className); if ($reflectionClass->isInterface()) { // @todo interfaces *may* be proxied by deferring property localization to the constructor (no hardcoding) $this->setExpectedException('ProxyManager\\Exception\\InvalidProxiedClassException'); return parent::testGeneratesValidCode($className); } if ((PHP_VERSION_ID < 50400 || defined('HHVM_VERSION')) && $reflectionClass->getProperties(ReflectionProperty::IS_PRIVATE)) { $this->setExpectedException('ProxyManager\\Exception\\UnsupportedProxiedClassException'); } return parent::testGeneratesValidCode($className); }