/**
* @dataProvider getVersions
*/
public function testModuleVersioning($module, $path, $expectedPresenterName, $expectedUrl)
{
$route = new RestRoute($module);
$route->useURLModuleVersioning(RestRoute::MODULE_VERSION_PATH_PREFIX_PATTERN, [NULL => 'V1', 'v1' => 'V1', 'v2' => 'V2']);
$url = new UrlScript();
$url->setPath($path);
$request = new Request($url, NULL, NULL, NULL, NULL, NULL, 'GET');
$appRequest = $route->match($request);
$this->assertEquals($expectedPresenterName, $appRequest->getPresenterName());
$refUrl = new Url('http://localhost');
$url = $route->constructUrl($appRequest, $refUrl);
$this->assertEquals($expectedUrl, $url);
}