/** * @group ZF-9721 */ public function testRemovePrefixPathThrowsExceptionIfPathNotRegisteredInPrefix() { try { $loader = new Zend_Loader_PluginLoader(array('My_Namespace_' => 'My/Namespace/')); $loader->removePrefixPath('My_Namespace_', 'ZF9721'); $this->fail(); } catch (Exception $e) { $this->assertType('Zend_Loader_PluginLoader_Exception', $e); $this->assertContains('Prefix My_Namespace_ / Path ZF9721', $e->getMessage()); } $this->assertEquals(1, count($loader->getPaths('My_Namespace_'))); }
/** * @group ZF-7350 */ public function testPrefixesEndingInBackslashDenoteNamespacedClasses() { if (version_compare(PHP_VERSION, '5.3.0', '<')) { $this->markTestSkipped(__CLASS__ . '::' . __METHOD__ . ' requires PHP 5.3.0 or greater'); return; } $loader = new Zend_Loader_PluginLoader(array()); $loader->addPrefixPath('Zfns\\', dirname(__FILE__) . '/_files/Zfns'); try { $className = $loader->load('Foo'); } catch (Exception $e) { $paths = $loader->getPaths(); $this->fail(sprintf("Failed loading helper; paths: %s", var_export($paths, 1))); } $this->assertEquals('Zfns\\Foo', $className); $this->assertEquals('Zfns\\Foo', $loader->getClassName('Foo')); }
/** * @issue ZF-2741 */ public function testWin32UnderscoreSpacedShortNamesWillLoad() { $loader = new Zend_Loader_PluginLoader(array()); $loader->addPrefixPath('Zend_Filter', $this->libPath . '/Zend/Filter'); try { // Plugin loader will attempt to load "c:\path\to\library/Zend/Filter/Word\UnderscoreToDash.php" $className = $loader->load('Word_UnderscoreToDash'); } catch (Exception $e) { $paths = $loader->getPaths(); $this->fail(sprintf("Failed loading helper; paths: %s", var_export($paths, 1))); } $this->assertEquals($className, $loader->getClassName('Word_UnderscoreToDash')); }
/** * Get path stack * * @param string $prefix * @return false|array False if prefix does not exist, array otherwise */ public function getPaths($prefix = null) { // To return the same result as in the past. return array_reverse(parent::getPaths($prefix)); }
public function testClassFilesAreSearchedInLifoOrder() { $loader = new Zend_Loader_PluginLoader(array()); $loader->addPrefixPath('Zend_View_Helper', $this->libPath . '/Zend/View/Helper'); $loader->addPrefixPath('ZfTest', dirname(__FILE__) . '/_files/ZfTest'); try { $className = $loader->load('FormSubmit'); } catch (Exception $e) { $paths = $loader->getPaths(); $this->fail(sprintf("Failed loading helper; paths: %s", var_export($paths, 1))); } $this->assertEquals($className, $loader->getClassName('FormSubmit')); $this->assertEquals('ZfTest_FormSubmit', $loader->getClassName('FormSubmit')); }