parseRequest() public method

public parseRequest ( $manager, $request )
Beispiel #1
0
 public function testParseRequest()
 {
     $manager = new UrlManager(['cache' => null]);
     $request = new Request(['hostInfo' => 'http://en.example.com', 'methodParam' => '_METHOD']);
     $suites = $this->getTestsForParseRequest();
     foreach ($suites as $i => $suite) {
         list($name, $config, $tests) = $suite;
         $rule = new UrlRule($config);
         foreach ($tests as $j => $test) {
             $request->pathInfo = $test[0];
             $route = $test[1];
             $params = isset($test[2]) ? $test[2] : [];
             $_POST['_METHOD'] = isset($test[3]) ? $test[3] : 'GET';
             $result = $rule->parseRequest($manager, $request);
             if ($route === false) {
                 $this->assertFalse($result, "Test#{$i}-{$j}: {$name}");
             } else {
                 $this->assertEquals([$route, $params], $result, "Test#{$i}-{$j}: {$name}");
             }
         }
     }
 }