/** * configura a aplicacao * @return SIALApplication * */ public function enableClassloader() { # @todo lancar exception se: # - nao tiver dados de configuracao # - nao tiver configurado 'app.mainsystem' # - nao tiver permissao de leitura na estrutra do projeto # - nao tiver permissao de escrtita na estrutra de projeto (isso para criar as pastas necessarias, caso nao tenha sido ainda criadas: cache, tmpdir, etc) # ClassLoade: init... /* configura o autoload para carregar as classe do SIAL */ ClassLoader::factory('br', current(preg_split('/\\/br\\//', self::SIALDocs())))->register(); /* configura o autoload para carregar as classe da app */ $APPNSSeparator = $this->_config->get('app.mainnamespace'); $APPNSSeparator = current(explode(self::NAMESPACE_SEPARATOR, self::NAMESPACE_SEPARATOR == $APPNSSeparator[0] ? substr($APPNSSeparator, 1) : $APPNSSeparator)); ClassLoader::factory($APPNSSeparator, constant('APPLICATION_HTDOCS'))->register(); return $this; }
error_reporting(E_ALL & ~E_STRICT); ini_set('display_errors', 'On'); date_default_timezone_set('America/Sao_Paulo'); defined('NAMESPACE_SEPARATOR') ?: define('NAMESPACE_SEPARATOR', '\\'); defined('APPLICATION_ENV') ?: define('APPLICATION_ENV', 'testing'); defined('SIAL_NS') ?: define('SIAL_NS', '\\br\\gov\\sial', FALSE); defined('SIAL_CORE_NS') ?: define('SIAL_CORE_NS', SIAL_NS . NAMESPACE_SEPARATOR . 'core', FALSE); if (!defined('SIAL_HTDOCS')) { $SIAL_HTDOCS = current(explode(str_replace(NAMESPACE_SEPARATOR, DIRECTORY_SEPARATOR, SIAL_NS), __DIR__)); $SIAL_HTDOCS = rtrim($SIAL_HTDOCS, 'test'); define('SIAL_HTDOCS', $SIAL_HTDOCS, FALSE); require_once sprintf("%sClassLoader.php", constant('SIAL_HTDOCS') . str_replace(':', DIRECTORY_SEPARATOR, 'br:gov:sial:core:')); /* local onde o SIAL está armazenado */ ClassLoader::factory(constant('SIAL_CORE_NS'), constant('SIAL_HTDOCS'))->register(); /* local onde a aplicacao de teste está armazenada */ ClassLoader::factory('\\test\\application', __DIR__)->register(); } /* registra o classloader do SIAL */ // // # defina o caminho do phpunit.phar // define('PHPUNIT_PATH', '/usr/local/bin/', FALSE); // /* SIAL namespace */ // define('SIAL_NS', '\br\gov\sial', FALSE); // // /* pasta do sial dentro de sua propria estrutura. ex: /path/br/gov/sial */ // $SIAL_HOME = dirname(__DIR__) . DIRECTORY_SEPARATOR; // if (!defined('SIAL_HTDOCS')) { // $SIAL_HTDOCS = current(explode(str_replace(NAMESPACE_SEPARATOR, DIRECTORY_SEPARATOR, SIAL_NS), __DIR__)); // $SIAL_HTDOCS = rtrim($SIAL_HTDOCS, 'test'); // define('SIAL_HTDOCS', $SIAL_HTDOCS, FALSE); // } // /* load class loader */