/** * borrowed from Zend\Loader\StandardAutoloader */ public function testCanActAsFallbackAutoloader() { $loader = new StandardAutoloader(); $loader->setFallbackAutoloader(true); set_include_path(__DIR__ . '/TestAsset/' . PATH_SEPARATOR . $this->includePath); $loader->autoload('TestNamespace\TestProvider'); $loader->autoload('TestNamespace\TestInvalidProvider'); //initialize ini $ini = __DIR__. '/_files/enable.ini'; file_put_contents($ini, ''); $clientConfig = new ClientConfig; $clientConfig->setConfigFilePath($ini); $this->_registry->setConfig($clientConfig); $config = $this->_configProvider; // Test enable provider try { $config->enableProvider('TestNamespace\TestInvalidProvider'); $this->fail('RuntimeException was expected but not thrown'); } catch (RuntimeException $re) { } $config->enableProvider('TestNamespace\TestProvider'); $configs = $clientConfig->basicloader->classes; $this->assertEquals('TestNamespace\TestProvider', $configs->current()); // Test disable provider try { $config->disableProvider('TestNamespace\TestInvalidProvider'); $this->fail('RuntimeException was expected but not thrown'); } catch (RuntimeException $re) { } $config->disableProvider('TestNamespace\TestProvider'); $this->assertEmpty($configs->current(), 'No config setting will exists'); /** * manifest test */ $loader->autoload('TestNamespace\TestManifest'); $loader->autoload('TestNamespace\TestInvalidManifest'); try { $config->enableManifest('TestNamespace\TestInvalidManifest'); $this->fail('RuntimeException was expected but not thrown'); } catch (RuntimeException $re) { } $config->enableManifest('TestNamespace\TestManifest'); $configs = $clientConfig->basicloader->classes; $this->assertEquals('TestNamespace\TestManifest', $configs->current()); try { $config->disableManifest('TestNamespace\TestInvalidManifest'); $this->fail('RuntimeException was expected but not thrown'); } catch (RuntimeException $re) { } $config->disableManifest('TestNamespace\TestManifest'); $this->assertEmpty($configs->current(), 'No config setting will exists'); // cleanup file_put_contents($ini, ''); }
/** * borrowed from Zend\Loader\StandardAutoloader */ public function testCanActAsFallbackAutoloader() { $loader = new StandardAutoloader(); $loader->setFallbackAutoloader(true); set_include_path(__DIR__ . '/TestAsset/' . PATH_SEPARATOR . $this->includePath); $loader->autoload('TestNamespace\TestProvider'); $loader->autoload('TestNamespace\TestInvalidProvider'); //initialize ini $ini = __DIR__. '/_files/enable.ini'; file_put_contents($ini, ''); $clientConfig = new ClientConfig; $clientConfig->setConfigFilePath($ini); $this->_registry->setConfig($clientConfig); $config = $this->_configProvider; try { $config->enableProvider('TestNamespace\TestInvalidProvider'); $this->fail('RuntimeException was expected but not thrown'); } catch (RuntimeException $re) { } $config->enableProvider('TestNamespace\TestProvider'); $providers = $clientConfig->basicloader->classes->toArray(); $this->assertEquals('TestNamespace\TestProvider', current($providers)); file_put_contents($ini, ''); }