diff --git a/ckanext/spatial/tests/functional/__init__.py b/ckanext/spatial/tests/functional/__init__.py index 2e2033b3..bdbf2dc6 100644 --- a/ckanext/spatial/tests/functional/__init__.py +++ b/ckanext/spatial/tests/functional/__init__.py @@ -5,3 +5,7 @@ except ImportError: import pkgutil __path__ = pkgutil.extend_path(__path__, __name__) + +from ckan.plugins import toolkit + +legacy_routing = toolkit.check_ckan_version(max_version='2.9') diff --git a/ckanext/spatial/tests/functional/test_package.py b/ckanext/spatial/tests/functional/test_package.py index 1e36d20a..fa6be846 100644 --- a/ckanext/spatial/tests/functional/test_package.py +++ b/ckanext/spatial/tests/functional/test_package.py @@ -14,6 +14,7 @@ from ckanext.spatial.model import PackageExtent from ckanext.spatial.geoalchemy_common import legacy_geoalchemy from ckanext.spatial.tests.base import SpatialTestBase +from ckanext.spatial.tests.functional import legacy_routing class TestSpatialExtra(SpatialTestBase, helpers.FunctionalTestBase): @@ -25,7 +26,11 @@ def test_spatial_extra(self): env = {'REMOTE_USER': user['name'].encode('ascii')} dataset = factories.Dataset(user=user) - offset = url_for(controller='package', action='edit', id=dataset['id']) + if legacy_routing: + offset = url_for(controller='package', action='edit', + id=dataset['id']) + else: + offset = url_for('dataset.edit', id=dataset['id']) res = app.get(offset, extra_environ=env) form = res.forms[1] @@ -66,7 +71,11 @@ def test_spatial_extra_edit(self): env = {'REMOTE_USER': user['name'].encode('ascii')} dataset = factories.Dataset(user=user) - offset = url_for(controller='package', action='edit', id=dataset['id']) + if legacy_routing: + offset = url_for(controller='package', action='edit', + id=dataset['id']) + else: + offset = url_for('dataset.edit', id=dataset['id']) res = app.get(offset, extra_environ=env) form = res.forms[1] @@ -113,7 +122,11 @@ def test_spatial_extra_bad_json(self): env = {'REMOTE_USER': user['name'].encode('ascii')} dataset = factories.Dataset(user=user) - offset = url_for(controller='package', action='edit', id=dataset['id']) + if legacy_routing: + offset = url_for(controller='package', action='edit', + id=dataset['id']) + else: + offset = url_for('dataset.edit', id=dataset['id']) res = app.get(offset, extra_environ=env) form = res.forms[1] @@ -133,7 +146,11 @@ def test_spatial_extra_bad_geojson(self): env = {'REMOTE_USER': user['name'].encode('ascii')} dataset = factories.Dataset(user=user) - offset = url_for(controller='package', action='edit', id=dataset['id']) + if legacy_routing: + offset = url_for(controller='package', action='edit', + id=dataset['id']) + else: + offset = url_for('dataset.edit', id=dataset['id']) res = app.get(offset, extra_environ=env) form = res.forms[1] diff --git a/ckanext/spatial/tests/functional/test_widgets.py b/ckanext/spatial/tests/functional/test_widgets.py index fbe75baf..7df30b84 100644 --- a/ckanext/spatial/tests/functional/test_widgets.py +++ b/ckanext/spatial/tests/functional/test_widgets.py @@ -1,6 +1,7 @@ from ckan.lib.helpers import url_for from ckanext.spatial.tests.base import SpatialTestBase +from ckanext.spatial.tests.functional import legacy_routing try: import ckan.new_tests.helpers as helpers @@ -21,7 +22,11 @@ def test_dataset_map(self): extras=[{'key': 'spatial', 'value': self.geojson_examples['point']}] ) - offset = url_for(controller='package', action='read', id=dataset['id']) + if legacy_routing: + offset = url_for(controller='package', action='read', + id=dataset['id']) + else: + offset = url_for('dataset.read', id=dataset['name']) res = app.get(offset) assert 'data-module="dataset-map"' in res @@ -31,7 +36,10 @@ def test_spatial_search_widget(self): app = self._get_test_app() - offset = url_for(controller='package', action='search') + if legacy_routing: + offset = url_for(controller='package', action='search') + else: + offset = url_for('dataset.search') res = app.get(offset) assert 'data-module="spatial-query"' in res