def test_remove_multiple_tags(self): changes = [] original = Dataset(tags=[ { u"name": u"rivers" }, { u"name": u"oceans" }, { u"name": u"streams" }, ]) new = helpers.call_action(u"package_patch", id=original["id"], tags=[{ u"name": u"rivers" }]) check_metadata_changes(changes, original, new) assert len(changes) == 1, changes assert changes[0]["type"] == u"tags" assert changes[0]["method"] == u"remove_multiple" assert set(changes[0]["tags"]) == set((u"oceans", u"streams"))
def test_delete_multiple_extras(self): changes = [] original = Dataset(extras=[ { u"key": u"subject", u"value": u"science" }, { u"key": u"topic", u"value": u"wind" }, { u"key": u"geography", u"value": u"global" }, ]) new = helpers.call_action( u"package_patch", id=original["id"], extras=[{ u"key": u"topic", u"value": u"wind" }], ) check_metadata_changes(changes, original, new) assert len(changes) == 1, changes assert changes[0]["type"] == u"extra_fields" assert changes[0]["method"] == u"remove_multiple" assert set(changes[0]["key_list"]) == set((u"subject", u"geography"))
def test_change_extra(self): changes = [] original = Dataset(extras=[ { u"key": u"subject", u"value": u"science" }, { u"key": u"topic", u"value": u"wind" }, ]) new = helpers.call_action( u"package_patch", id=original["id"], extras=[ { u"key": u"subject", u"value": u"scientific" }, { u"key": u"topic", u"value": u"wind" }, ], ) check_metadata_changes(changes, original, new) assert len(changes) == 1, changes assert changes[0]["type"] == u"extra_fields" assert changes[0]["method"] == u"change_with_old_value" assert changes[0]["key"] == u"subject" assert changes[0]["old_value"] == u"science" assert changes[0]["new_value"] == u"scientific"
def test_change_extra(self): changes = [] original = Dataset(extras=[{ u'key': u'subject', u'value': u'science' }, { u'key': u'topic', u'value': u'wind' }]) new = helpers.call_action(u'package_patch', id=original['id'], extras=[{ u'key': u'subject', u'value': u'scientific' }, { u'key': u'topic', u'value': u'wind' }]) check_metadata_changes(changes, original, new) assert len(changes) == 1, changes eq(changes[0]['type'], u'extra_fields') eq(changes[0]['method'], u'change_with_old_value') eq(changes[0]['key'], u'subject') eq(changes[0]['old_value'], u'science') eq(changes[0]['new_value'], u'scientific')
def test_multiple_tags_removed_with_non_existing(self): changes = [] original = { u"tags": [ { u"name": u"rivers" }, { u"name": u"oceans" }, { u"name": u"streams" }, ] } new = {} check_metadata_changes(changes, original, new) assert len(changes) == 1, changes assert changes[0]["type"] == u"tags" assert changes[0]["method"] == u"remove_multiple" assert set(changes[0]["tags"]) == set( (u"rivers", u"oceans", u"streams"))
def test_delete_multiple_extras(self): changes = [] original = Dataset(extras=[{ u'key': u'subject', u'value': u'science' }, { u'key': u'topic', u'value': u'wind' }, { u'key': u'geography', u'value': u'global' }]) new = helpers.call_action(u'package_patch', id=original['id'], extras=[{ u'key': u'topic', u'value': u'wind' }]) check_metadata_changes(changes, original, new) assert len(changes) == 1, changes eq(changes[0]['type'], u'extra_fields') eq(changes[0]['method'], u'remove_multiple') eq(set(changes[0]['key_list']), set((u'subject', u'geography')))
def test_notes_removed_with_non_existing(self): changes = [] original = {u'notes': u'old notes'} new = {} check_metadata_changes(changes, original, new) assert changes[0]["type"] == u"notes" assert changes[0]["method"] == u"remove"
def test_author_removed_with_non_existing(self): changes = [] original = {u'author': u"old author"} new = {} check_metadata_changes(changes, original, new) assert changes[0]["type"] == u"author" assert changes[0]["method"] == u"remove"
def test_maintainer_email_removed_with_non_existing(self): changes = [] original = {u'maintainer_email': u"*****@*****.**"} new = {} check_metadata_changes(changes, original, new) assert changes[0]["type"] == u"maintainer_email" assert changes[0]["method"] == u"remove"
def test_remove_url(self): changes = [] original = Dataset(url=u"first url") new = helpers.call_action(u"package_patch", id=original["id"], url=u"") check_metadata_changes(changes, original, new) assert changes[0]["type"] == u"url" assert changes[0]["method"] == u"remove"
def test_remove_url(self): changes = [] original = Dataset(url=u'first url') new = helpers.call_action(u'package_patch', id=original['id'], url=u'') check_metadata_changes(changes, original, new) eq(changes[0]['type'], u'url') eq(changes[0]['method'], u'remove')
def test_license_title_added_when_it_does_not_exist(self): changes = [] original = {} new = {u"license_title": u"new license"} check_metadata_changes(changes, original, new) assert len(changes) == 1, changes assert changes[0]["type"] == u"license" assert changes[0]["new_title"] == u"new license"
def test_author_added_when_it_does_not_exist(self): changes = [] original = {} new = {u'author': u"new author"} check_metadata_changes(changes, original, new) assert changes[0]["type"] == u"author" assert changes[0]["method"] == u"add" assert changes[0]["new_author"] == u"new author"
def test_maintainer_email_added_when_it_does_not_exist(self): changes = [] original = {} new = {u'maintainer_email': u"*****@*****.**"} check_metadata_changes(changes, original, new) assert changes[0]["type"] == u"maintainer_email" assert changes[0]["method"] == u"add" assert changes[0]["new_maintainer_email"] == u"*****@*****.**"
def test_notes_added_when_it_does_not_exist(self): changes = [] original = {} new = {u'notes': u'new notes'} check_metadata_changes(changes, original, new) assert changes[0]["type"] == u"notes" assert changes[0]["method"] == u"add" assert changes[0]["new_notes"] == u"new notes"
def test_version_removed_with_non_existing(self): changes = [] original = {u"version": u"1"} new = {} check_metadata_changes(changes, original, new) assert len(changes) == 1, changes assert changes[0]["type"] == u"version" assert changes[0]["method"] == u"remove" assert changes[0]["old_version"] == u"1"
def test_title_removed_with_non_existing(self): changes = [] original = {u'title': u'old title'} new = {} check_metadata_changes(changes, original, new) assert len(changes) == 1, changes assert changes[0]["type"] == u"title" assert changes[0]["old_title"] == u'old title' assert changes[0]["new_title"] is None
def test_title_changed(self): changes = [] original = {u'title': u'old title'} new = {u'title': u"new title"} check_metadata_changes(changes, original, new) assert len(changes) == 1, changes assert changes[0]["type"] == u"title" assert changes[0]["old_title"] == u"old title" assert changes[0]["new_title"] == u"new title"
def test_title_added_when_it_does_not_exist(self): changes = [] original = {} new = {u'title': u"new title"} check_metadata_changes(changes, original, new) assert len(changes) == 1, changes assert changes[0]["type"] == u"title" assert changes[0]["old_title"] is None assert changes[0]["new_title"] == u"new title"
def test_license_title_changed(self): changes = [] original = {u"license_title": u"old license"} new = {u"license_title": u"new license"} check_metadata_changes(changes, original, new) assert len(changes) == 1, changes assert changes[0]["type"] == u"license" assert changes[0]["old_title"] == u"old license" assert changes[0]["new_title"] == u"new license"
def test_tag_added_when_it_does_not_exist(self): changes = [] original = {} new = {u"tags": [{u"name": u"rivers"}]} check_metadata_changes(changes, original, new) assert len(changes) == 1, changes assert changes[0]["type"] == u"tags" assert changes[0]["method"] == u"add_one" assert changes[0]["tag"] == u"rivers"
def test_maintainer_email_changed(self): changes = [] original = {u'maintainer_email': u"*****@*****.**"} new = {u'maintainer_email': u"*****@*****.**"} check_metadata_changes(changes, original, new) assert changes[0]["type"] == u"maintainer_email" assert changes[0]["method"] == u"change" assert changes[0]["new_maintainer_email"] == u"*****@*****.**" assert changes[0]["old_maintainer_email"] == u"*****@*****.**"
def test_maintainer_changed(self): changes = [] original = {u'maintainer': u"old maintainer"} new = {u'maintainer': u"new maintainer"} check_metadata_changes(changes, original, new) assert changes[0]["type"] == u"maintainer" assert changes[0]["method"] == u"change" assert changes[0]["new_maintainer"] == u"new maintainer" assert changes[0]["old_maintainer"] == u"old maintainer"
def test_version_added_when_it_does_not_exist(self): changes = [] original = {} new = {u'version': u'1'} check_metadata_changes(changes, original, new) assert len(changes) == 1, changes assert changes[0]["type"] == u"version" assert changes[0]["method"] == u"add" assert changes[0]["new_version"] == u'1'
def test_license_title_removed_with_non_existing(self): changes = [] original = {u"license_title": u"old license"} new = {} check_metadata_changes(changes, original, new) assert len(changes) == 1, changes assert changes[0]["type"] == u"license" assert changes[0]["old_title"] == u"old license" assert changes[0]["new_title"] is None
def test_url_added_when_it_does_not_exist(self): changes = [] original = {} new = {u'url': u'http://example.com'} check_metadata_changes(changes, original, new) assert len(changes) == 1, changes assert changes[0]["type"] == u"url" assert changes[0]["method"] == u"add" assert changes[0]["new_url"] == u'http://example.com'
def test_notes_changed(self): changes = [] original = {u'notes': u'old notes'} new = {u'notes': u'new notes'} check_metadata_changes(changes, original, new) assert changes[0]["type"] == u"notes" assert changes[0]["method"] == u"change" assert changes[0]["new_notes"] == u"new notes" assert changes[0]["old_notes"] == u"old notes"
def test_remove_maintainer(self): changes = [] original = Dataset(maintainer=u"first maintainer") new = helpers.call_action(u"package_patch", id=original["id"], maintainer=u"") check_metadata_changes(changes, original, new) assert changes[0]["type"] == u"maintainer" assert changes[0]["method"] == u"remove"
def test_url_removed_with_non_existing(self): changes = [] original = {u"url": u"http://example.com"} new = {} check_metadata_changes(changes, original, new) assert len(changes) == 1, changes assert changes[0]["type"] == u"url" assert changes[0]["method"] == u"remove" assert changes[0]["old_url"] == u"http://example.com"
def test_tag_removed_with_non_existing(self): changes = [] original = {u"tags": [{u"name": u"oceans"}]} new = {} check_metadata_changes(changes, original, new) assert len(changes) == 1, changes assert changes[0]["type"] == u"tags" assert changes[0]["method"] == u"remove_one" assert changes[0]["tag"] == u"oceans"