Пример #1
0
 public function testLog()
 {
     $log = Factory::log();
     $this->assertEquals(\Logger::getLogger('main'), $log);
     $this->assertEquals(Factory::log(), $log);
     Memory::set('debug', true);
     $this->assertEquals(\Logger::getLogger('debug'), Factory::log());
     Memory::clear('debug');
     $this->assertEquals(\Logger::getLogger('main'), $log);
 }
Пример #2
0
 public function testClearAll()
 {
     Memory::set('x', 1);
     Memory::set('y', 1);
     Memory::clearAll();
     $this->assertEmpty(Memory::get('x'));
     $this->assertEmpty(Memory::get('y'));
     Memory::clearAll();
     $this->assertEmpty(Memory::get('x'));
     $this->assertEmpty(Memory::get('y'));
 }
Пример #3
0
 /**
  * Cria e retorna um objeto para a página solicitada
  * 
  * @param  string          $page Nome da página que irá processar a solicitação
  * @return \ProcessRequest
  */
 public static function page($page)
 {
     $className = ucfirst($page);
     if (file_exists(PATH_APP . '/Page/' . $className . '.php')) {
         //Carrega uma página da aplicação
         Memory::set('template', 'app');
         $fileName = PATH_APP . '/Page/' . $className . '.php';
     } else {
         if (file_exists(PATH_DEFAULT . '/Page/' . $className . '.php')) {
             //Carrega uma página default do framework
             Memory::set('template', 'default');
             $fileName = PATH_DEFAULT . '/Page/' . $className . '.php';
         } else {
             $errorPage = self::page('ErrorPage');
             $errorPage->setErrorMessage("A página solicitada não existe!");
             return $errorPage;
         }
     }
     require_once $fileName;
     $factory = new \ReflectionClass("Application\\Page\\" . $className);
     if ($factory->implementsInterface("MyFrameWork\\Event\\PublisherInterface")) {
         $instance = $factory->newInstance();
         $method = $factory->getMethod("setEventManager");
         $method->invoke($instance, EventManager::getInstance());
         return $instance;
     } else {
         if ($factory->implementsInterface("MyFrameWork\\Event\\PagePublisherInterface")) {
             return $factory->newInstance(PageEventManager::getInstance());
         } else {
             if ($factory->hasMethod('service') && !$factory->isAbstract()) {
                 return $factory->newInstance();
             } else {
                 // @codeCoverageIgnoreStart
                 //Só entra neste else caso exista alguma classe que não seja Page na pasta dos pages
                 $errorPage = self::page('ErrorPage');
                 $errorPage->setErrorMessage("A página solicitada não existe!<br>causa: <small>A classe {$className} não é valida!</small>");
                 return $errorPage;
                 // @codeCoverageIgnoreEnd
             }
         }
     }
 }
 public function testIsValid()
 {
     Memory::set('debug', true);
     foreach ($this->data as $k => $val) {
         $val2 = $this->object->sanitize($val);
         $this->assertTrue($this->object->isValid($val2), 'Error to validate the sanitized key: ' . $k);
     }
     $this->assertTrue($this->object->isValid(''));
     $this->assertFalse($this->object->isValid(' '));
     //Não é vazio, então não é válido
     $this->assertTrue($this->object->isValid(true));
     $this->assertTrue($this->object->isValid(false));
     $this->assertTrue($this->object->isValid(null));
     $required = array(Flag::REQUIRED => true);
     $this->assertFalse($this->object->isValid('', $required));
     $this->assertFalse($this->object->isValid(' ', $required));
     $this->assertFalse($this->object->isValid(null, $required));
     $this->assertFalse($this->object->isValid(' ', $required));
     $this->assertTrue($this->object->isValid(true, $required));
     //'true'
     $this->assertTrue($this->object->isValid(false, $required));
     //'false'
     $this->assertTrue($this->object->isValid('abc', $required));
     $this->assertTrue($this->object->isValid(0, $required));
     $this->assertTrue($this->object->isValid('0', $required));
     $required[Flag::MINLENGHT] = 2;
     $this->assertFalse($this->object->isValid(' ', $required));
     $this->assertFalse($this->object->isValid('a', $required));
     $this->assertTrue($this->object->isValid('213412', $required));
     $required[Flag::MAXLENGHT] = 5;
     $this->assertFalse($this->object->isValid('213412', $required));
     $this->assertFalse($this->object->isValid('      ', $required));
     $this->assertTrue($this->object->isValid('12', $required));
     $this->assertTrue($this->object->isValid('12345', $required));
     //Minlenght without required
     $this->assertTrue($this->object->isValid('', array(Flag::MINLENGHT => 3)));
 }
Пример #5
0
define('DEVELOPMENT', 'DEVELOPMENT');
define('PRODUCTION', 'PRODUCTION');
define("SERVER_MODE", $appconfig['geral']['mode']);
define("DOMAIN", $appconfig['geral']['url']);
define("DOMAIN_EMAIL", $appconfig['geral']['domain']);
define("PAGE_TITLE_PREFIX", $appconfig['geral']['prefix']);
$databaseconfig = parse_ini_file("app/conf/database.{$env}.ini", true);
define("DATABASE_DRIVER", getValueFromArray($databaseconfig['database'], 'driver'), '');
define("DATABASE_NAME", getValueFromArray($databaseconfig['database'], 'dbname', ''));
define("DATABASE_HOST", getValueFromArray($databaseconfig['database'], 'host', ''));
define("DATABASE_PORT", getValueFromArray($databaseconfig['database'], 'port', ''));
define("DATABASE_USER", getValueFromArray($databaseconfig['database'], 'user', ''));
define("DATABASE_PASSWORD", getValueFromArray($databaseconfig['database'], 'password'), '');
//Default CSS and JS
foreach ($appconfig['html']['js'] as $jsfile) {
    MemoryPage::addJs($jsfile);
}
foreach ($appconfig['html']['css'] as $cssfile) {
    MemoryPage::addCss($cssfile);
}
//Set Memory values
foreach ($appconfig['memory'] as $k => $v) {
    Memory::set($k, $v);
}
//Error lib - http://logging.apache.org/log4php/quickstart.html
//require_once PATH_MYFRAME . '/src/LoggerApp.php';
Logger::configure(PATH_DEFAULT . '/conf/php4log.xml');
// pra rodar o instalador precisa comentar essas 3 linhas
if (file_exists(PATH_APP . '/appbootstrap.php')) {
    require_once PATH_APP . '/appbootstrap.php';
}