From 3c7238b54a6691466b7398df0262137b145e77c8 Mon Sep 17 00:00:00 2001 From: Rufus Pollock Date: Sat, 18 Feb 2012 18:59:13 +0000 Subject: [PATCH] [#1797,webstore][s]: read actually looks up resource. --- ckan/controllers/webstore.py | 6 +++++- ckan/tests/functional/test_webstore.py | 10 +++++++--- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/ckan/controllers/webstore.py b/ckan/controllers/webstore.py index 427c92f9fa1..c4e9a9caf6f 100644 --- a/ckan/controllers/webstore.py +++ b/ckan/controllers/webstore.py @@ -1,6 +1,10 @@ from ckan.lib.base import BaseController +import ckan.model as model class WebstoreController(BaseController): def data(self, id): - return '' + resource = model.Session.query(model.Resource).get(id) + if not resource: + abort(404) + return resource.id diff --git a/ckan/tests/functional/test_webstore.py b/ckan/tests/functional/test_webstore.py index 3d5e412a055..a0dd7407a63 100644 --- a/ckan/tests/functional/test_webstore.py +++ b/ckan/tests/functional/test_webstore.py @@ -1,3 +1,5 @@ +from nose.tools import assert_equal + from ckan.tests import * from ckan.tests.pylons_controller import PylonsTestCase import ckan.model as model @@ -13,9 +15,11 @@ def setup_class(cls): def teardown_class(self): model.repo.rebuild_db() - def test_01(self): - resource_id = '123' + def test_read(self): + dataset = model.Package.by_name(CreateTestData.pkg_names[0]) + resource_id = dataset.resources[0].id offset = url_for('webstore', id=resource_id) - print offset res = self.app.get(offset) + assert_equal(res.status, 200) + assert_equal(res.body, resource_id)