handleApiVersion() public method

It extracts :apiversion group parameter from the route and sets application setting
public handleApiVersion ( Scalr\Api\Rest\Routing\Route $route )
$route Scalr\Api\Rest\Routing\Route A route
Example #1
0
 /**
  * @test
  */
 public function testAddRoute()
 {
     $path = '/api/v:apiversion/users/:id';
     $requirements = ['id' => '[\\d]+'];
     $route = $this->app->addRoute($path, function ($id) {
         /* do nothing */
     }, $requirements);
     $this->assertInstanceOf(self::getApiClass('Routing\\Route'), $route);
     $this->assertEquals($path, $route->getPath());
     $this->assertEquals([], $route->getMethods());
     $this->assertEquals($requirements, $route->getRequirements());
     $this->assertNull($route->getParams());
     $apiVersion = 12;
     $id = 3;
     $this->assertTrue($route->matches('/api/v' . $apiVersion . '/users/' . $id));
     $this->app->handleApiVersion($route);
     $params = $route->getParams();
     $this->assertTrue(isset($params['id']));
     $this->assertEquals($id, $params['id']);
     $this->assertEquals($apiVersion, $this->app->settings[Application::SETTING_API_VERSION]);
 }