Skip to content

Commit

Permalink
[#2158] Add more tests
Browse files Browse the repository at this point in the history
  • Loading branch information
amercader committed Feb 18, 2015
1 parent 627da06 commit 5bbd58c
Showing 1 changed file with 64 additions and 3 deletions.
67 changes: 64 additions & 3 deletions ckan/new_tests/logic/action/test_update.py
Expand Up @@ -636,7 +636,7 @@ def setup(self):
def teardown_class(cls):
helpers.reset_db()

def test_url(self):
def test_url_only(self):
dataset = factories.Dataset()
resource = factories.Resource(package=dataset, url='http://first')

Expand All @@ -649,16 +649,77 @@ def test_url(self):
id=resource['id'])
assert_equals(resource['url'], 'http://second')

def test_extra(self):
def test_extra_only(self):
dataset = factories.Dataset()
resource = factories.Resource(package=dataset, newfield='first')

res_returned = helpers.call_action('resource_update',
id=resource['id'],
url=resource['url'],
newfield='http://second')
newfield='second')

assert_equals(res_returned['newfield'], 'second')
resource = helpers.call_action('resource_show',
id=resource['id'])
assert_equals(resource['newfield'], 'second')

def test_both_extra_and_url(self):
dataset = factories.Dataset()
resource = factories.Resource(package=dataset,
url='http://first',
newfield='first')

res_returned = helpers.call_action('resource_update',
id=resource['id'],
url='http://second',
newfield='second')

assert_equals(res_returned['url'], 'http://second')
assert_equals(res_returned['newfield'], 'second')

resource = helpers.call_action('resource_show',
id=resource['id'])
assert_equals(res_returned['url'], 'http://second')
assert_equals(resource['newfield'], 'second')

def test_extra_gets_deleted_on_both_core_and_extra_update(self):
dataset = factories.Dataset()
resource = factories.Resource(package=dataset,
url='http://first',
newfield='first')

res_returned = helpers.call_action('resource_update',
id=resource['id'],
url='http://second',
anotherfield='second')

assert_equals(res_returned['url'], 'http://second')
assert_equals(res_returned['anotherfield'], 'second')
assert 'newfield' not in res_returned

resource = helpers.call_action('resource_show',
id=resource['id'])
assert_equals(res_returned['url'], 'http://second')
assert_equals(res_returned['anotherfield'], 'second')
assert 'newfield' not in res_returned

def test_extra_gets_deleted_on_extra_only_update(self):
dataset = factories.Dataset()
resource = factories.Resource(package=dataset,
url='http://first',
newfield='first')

res_returned = helpers.call_action('resource_update',
id=resource['id'],
url='http://first',
anotherfield='second')

assert_equals(res_returned['url'], 'http://first')
assert_equals(res_returned['anotherfield'], 'second')
assert 'newfield' not in res_returned

resource = helpers.call_action('resource_show',
id=resource['id'])
assert_equals(res_returned['url'], 'http://first')
assert_equals(res_returned['anotherfield'], 'second')
assert 'newfield' not in res_returned

0 comments on commit 5bbd58c

Please sign in to comment.