예제 #1
0
 public function testRouting()
 {
     $A = $B = $C = $D = $E = $F = $G = $H = $I = $J = true;
     $route = new Route('/', [$A]);
     $route->get($B, $C);
     $route->post($D);
     $segment1 = $route->route('/foo', $E, $F);
     $segment1->put($G);
     $segment1->route('/{id:0-9+}')->get($H);
     $segment2 = $route->route('/bar');
     $segment2->delete($I, $J);
     $segment2->patch();
     $this->assertSame(['/' => ['GET' => [$A, $B, $C], 'POST' => [$A, $D]], '/foo' => ['GET' => [$A, $E, $F], 'PUT' => [$A, $E, $F, $G]], '/foo/{id:0-9+}' => ['GET' => [$A, $E, $F, $H]], '/bar' => ['GET' => [$A], 'DELETE' => [$A, $I, $J], 'PATCH' => [$A]]], $route->dump());
 }