$this->handleSsl($instance); return $instance->redirected; } } class myRequest extends opWebRequest { public static $isSecure = false; public function isSecure() { return self::$isSecure; } } $context = sfContext::getInstance(); $context->configuration = ProjectConfiguration::getApplicationConfiguration('mobile_frontend', 'test', true); $context->inject('request', 'myRequest'); $filter = new myFilter($context); sfConfig::set('op_ssl_required_applications', array('secure_application')); sfConfig::set('op_ssl_required_actions', array('insecure_application' => array('secure/login', 'secure/logout'), 'mobile_frontend' => array())); sfConfig::set('op_ssl_selectable_actions', array('insecure_application' => array('selectable/login'), 'mobile_frontend' => array('member/register', 'member/registerInput', 'member/registerEnd', 'member/login', 'member/configUID'))); // --- $t->diag('->needToRetrieveMobileUID()'); $t->ok($filter->callNeedToRetrieveMobileUID('member', 'configUID'), 'member/configUID redirects user to HTTP'); $t->ok($filter->callNeedToRetrieveMobileUID('member', 'configUID', 0), 'member/configUID does not redirects user to HTTP when it does not retrieve uid'); $t->ok(!$filter->callNeedToRetrieveMobileUID('member', 'home'), 'member/home does not redirect user to HTTP'); $t->ok(!$filter->callNeedToRetrieveMobileUID('member', 'login'), 'member/login does not redirect user to HTTP'); $t->ok($filter->callNeedToRetrieveMobileUID('member', 'login', 1, array('authMode' => 'MobileUID')), 'member/login redirect user to HTTP when the authMode is MobileUID'); $t->diag('->handleSsl()'); sfConfig::set('op_use_ssl', true); myRequest::$isSecure = false; sfConfig::set('sf_app', 'secure_application'); $t->ok($filter->callHandleSsl('anything', 'anything'), 'ssl-required-application redirects user HTTP to HTTPS');
class myFilter extends sfFilter { public function isFirstCall() { return parent::isFirstCall(); } } $context = sfContext::getInstance(); $filter = new myFilter($context); // ->initialize() $t->diag('->initialize()'); $filter = new myFilter($context); $t->is($filter->getContext(), $context, '->initialize() takes a sfContext object as its first argument'); $filter->initialize($context, array('foo' => 'bar')); $t->is($filter->getParameter('foo'), 'bar', '->initialize() takes an array of parameters as its second argument'); // ->getContext() $t->diag('->getContext()'); $filter->initialize($context); $t->is($filter->getContext(), $context, '->getContext() returns the current context'); // ->isFirstCall() $t->diag('->isFirstCall()'); $t->is($filter->isFirstCall('beforeExecution'), true, '->isFirstCall() returns true if this is the first call with this argument'); $t->is($filter->isFirstCall('beforeExecution'), false, '->isFirstCall() returns false if this is not the first call with this argument'); $t->is($filter->isFirstCall('beforeExecution'), false, '->isFirstCall() returns false if this is not the first call with this argument'); $filter = new myFilter($context); $filter->initialize($context); $t->is($filter->isFirstCall('beforeExecution'), false, '->isFirstCall() returns false if this is not the first call with this argument'); // parameter holder proxy require_once $_test_dir . '/unit/sfParameterHolderTest.class.php'; $pht = new sfParameterHolderProxyTest($t); $pht->launchTests($filter, 'parameter');