diff --git a/gns3server/web/route.py b/gns3server/web/route.py index 1aef6ed9..10c28205 100644 --- a/gns3server/web/route.py +++ b/gns3server/web/route.py @@ -84,7 +84,8 @@ class Route(object): # This block is executed only the first time output_schema = kw.get("output", {}) input_schema = kw.get("input", {}) - cls._path = path + api_version = kw.get("version", 1) + cls._path = "/v{version}{path}".format(path=path, version=api_version) cls._documentation.setdefault(cls._path, {"methods": []}) def register(func): diff --git a/tests/api/base.py b/tests/api/base.py index 01d460d1..41a553d2 100644 --- a/tests/api/base.py +++ b/tests/api/base.py @@ -45,7 +45,7 @@ class Query: return self._fetch("DELETE", path, **kwargs) def _get_url(self, path): - return "http://{}:{}{}".format(self._host, self._port, path) + return "http://{}:{}/v1{}".format(self._host, self._port, path) def _fetch(self, method, path, body=None, **kwargs): """Fetch an url, parse the JSON and return response @@ -74,7 +74,7 @@ class Query: asyncio.async(go(future, response)) self._loop.run_until_complete(future) response.body = future.result() - response.route = response.headers.get('X-Route', None) + response.route = response.headers.get('X-Route', None).replace("/v1", "") if response.body is not None: try: diff --git a/tox.ini b/tox.ini index a6c23dee..09c25a0c 100644 --- a/tox.ini +++ b/tox.ini @@ -10,4 +10,4 @@ ignore = E501 [pytest] norecursedirs = old_tests .tox -timeout = 10 +timeout = 1