Ejemplo n.º 1
0
 /**
  * Adds a rule to UrlManager.
  *
  * @param Rule $rule
  * @return $this
  */
 public function addRule(Rule $rule)
 {
     if (isset($this->rules[$rule->getRoute()])) {
         $this->rules[$rule->getRoute()] = Rule::merge($this->rules[$rule->getRoute()], $rule);
     } else {
         $this->rules[$rule->getRoute()] = $rule;
     }
     return $this;
 }
Ejemplo n.º 2
0
 public function testMerge()
 {
     $this->assertEquals(new \UrlManager\Rule('GET', '/', '/'), \UrlManager\Rule::merge(new \UrlManager\Rule('GET', '/', '/'), new \UrlManager\Rule('GET', '/', '/')));
     $this->assertEquals(new \UrlManager\Rule('GET', '/', '/'), \UrlManager\Rule::merge(new \UrlManager\Rule('GET', '/', '/'), new \UrlManager\Rule(['GET'], '/', '/')));
     $this->assertEquals(new \UrlManager\Rule(['GET', 'POST'], '/', '/'), \UrlManager\Rule::merge(new \UrlManager\Rule('GET', '/', '/'), new \UrlManager\Rule('POST', '/', '/')));
     $this->assertEquals(new \UrlManager\Rule(['GET', 'POST'], '/', '/'), \UrlManager\Rule::merge(new \UrlManager\Rule('GET', '/', '/'), new \UrlManager\Rule(['POST'], '/', '/')));
     $this->assertEquals(new \UrlManager\Rule(['GET', 'POST'], '/', '/'), \UrlManager\Rule::merge(new \UrlManager\Rule(['GET'], '/', '/'), new \UrlManager\Rule('POST', '/', '/')));
     $this->assertEquals(new \UrlManager\Rule(['GET', 'POST'], '/', '/'), \UrlManager\Rule::merge(new \UrlManager\Rule(['GET'], '/', '/'), new \UrlManager\Rule(['POST'], '/', '/')));
 }