public function configureRoute(sfRoute $route)
 {
     $route->setDefaultParameters($this->defaultParameters);
     $route->setDefaultOptions($this->options);
 }
示例#2
0
$route = new sfRoute('/:foo');
$t->is($route->matchesParameters(array()), false, '->matchesParameters() returns false if one of the pattern variable is not provided');
$route = new sfRoute('/:foo', array('foo' => 'bar'));
$t->is($route->matchesParameters(array()), true, '->matchesParameters() merges the default parameters with the provided parameters to match the route');
$route = new sfRoute('/:foo');
$t->is($route->matchesParameters(array('foo' => 'bar')), true, '->matchesParameters() matches if all variables are given as parameters');
$route = new sfRoute('/:foo');
$t->is($route->matchesParameters(array('foo' => '')), true, '->matchesParameters() matches if optional parameters empty');
$t->is($route->matchesParameters(array('foo' => null)), true, '->matchesParameters() matches if optional parameters empty');
/*
$route = new sfRoute('/:foo/bar');
$t->is($route->matchesParameters(array('foo' => '')), false, '->matchesParameters() does not match is required parameters are empty');
$t->is($route->matchesParameters(array('foo' => null)), false, '->matchesParameters() does not match is required parameters are empty');
*/
$route = new sfRoute('/:foo');
$route->setDefaultParameters(array('foo' => 'bar'));
$t->is($route->matchesParameters(array()), true, '->matchesParameters() merges the routing default parameters with the provided parameters to match the route');
$route = new sfRoute('/:foo', array(), array('foo' => '\\d+'));
$t->is($route->matchesParameters(array('foo' => 'bar')), false, '->matchesParameters() enforces requirements');
$route = new sfRoute('/:foo', array(), array('foo' => '\\d+'));
$t->is($route->matchesParameters(array('foo' => 12)), true, '->matchesParameters() enforces requirements');
$route = new sfRoute('/', array('foo' => 'bar'));
$t->is($route->matchesParameters(array('foo' => 'foobar')), false, '->matchesParameters() checks that there is no parameter that is not a pattern variable');
$route = new sfRoute('/', array('foo' => 'bar'));
$t->is($route->matchesParameters(array('foo' => 'bar')), true, '->matchesParameters() can override a parameter that is not a pattern variable if the value is the same as the default one');
$route = new sfRoute('/:foo', array('bar' => 'foo'));
$t->is($route->matchesParameters(array('foo' => 'bar', 'bar' => 'foo')), true, '->matchesParameters() can override a parameter that is not a pattern variable if the value is the same as the default one');
$route = new sfRoute('/:foo');
$t->is($route->matchesParameters(array('foo' => 'bar', 'bar' => 'foo')), true, '->generate() matches even if there are extra parameters');
$route = new sfRoute('/:foo', array(), array(), array('extra_parameters_as_query_string' => false));
$t->is($route->matchesParameters(array('foo' => 'bar', 'bar' => 'foo')), false, '->generate() does not match if there are extra parameters if extra_parameters_as_query_string is set to false');