/** * @return \Nano\Helper * @param string $name * * @throws \Nano\Exception\HelperNotFound */ protected function search($name) { $className = \Nano\Names::helperClass($name, $this->module); $classPath = \Nano\Names::moduleFile($className); if (!$this->application->loader->loadFileWithClass($className, $classPath)) { throw new \Nano\Exception\HelperNotFound($name, $this->module); } return new $className(); }
/** * @return \Nano\Helper * @param string $name * * @throws \Nano\Exception\HelperNotFound */ protected function search($name) { $className = \Nano\Names::helperClass($name); if (class_exists($className, false)) { return $className; } $classPath = \Nano\Names::applicationFile($className); if (!\Nano::app()->loader->loadFileWithClass($className, $classPath)) { throw new \Nano\Exception\HelperNotFound($name); } return new $className(); }
public function testUsingHelperAdditionalNamespaceWithModuleNamespace() { self::assertEquals('Module\\Test\\Helper\\News\\Backend', \Nano\Names::helperClass('news/backend', 'test')); }