Example #1
0
 /**
  * Test route table with one simple entry besides default
  */
 public function testSimple_route()
 {
     $r = new Router();
     //  Build route table
     $r->connect(':foo/:bar/mumble', array('mumble route'));
     //  Params not an array ignored, null is stored
     $r->connect(':controller/:action/:id', 'not-an-array');
     //  Match first route
     $route = $r->find_route('a/b/mumble');
     $this->assertEquals(':foo/:bar/mumble', $route['path']);
     $this->assertEquals(array('mumble route'), $route['params']);
     $selected = $r->get_selected_route();
     $this->assertEquals(':foo/:bar/mumble', $selected['path']);
     $this->assertEquals(array('mumble route'), $selected['params']);
     //  Match second route
     $route = $r->find_route('a/b/c');
     $this->assertEquals(':controller/:action/:id', $route['path']);
     $this->assertNull($route['params']);
     $selected = $r->get_selected_route();
     $this->assertEquals(':controller/:action/:id', $selected['path']);
     $this->assertNull($selected['params']);
 }