Skip to content
Snippets Groups Projects
Commit 7de9f6dc authored by anonymous's avatar anonymous
Browse files

add validation unit tests

parent ba85c965
No related branches found
No related tags found
No related merge requests found
......@@ -7,10 +7,13 @@ from mock import MagicMock, Mock, patch
def mockInvalid(*args, **kwargs):
return Exception(*args, **kwargs)
def mock_(s):
return s
m = MagicMock()
class MissingMock:
pass
m.Missing=MissingMock
sys.modules['ckan'] = MagicMock()
sys.modules['ckan.plugins'] = MagicMock()
......@@ -18,14 +21,16 @@ sys.modules['ckan.plugins.toolkit'] = MagicMock()
sys.modules['ckan.model'] = MagicMock()
sys.modules['ckan.lib'] = MagicMock()
sys.modules['ckan.lib.navl'] = MagicMock()
sys.modules['ckan.lib.navl.dictization_functions'] = MagicMock()
sys.modules['ckan.lib.navl.dictization_functions'] = m
sys.modules['pylons'] = MagicMock()
import ckan.model as modelMock
import pylons
import ckan.plugins.toolkit as toolkit
toolkit.Invalid = mockInvalid
toolkit._ = mock_
import pylons
from ckanext.odsh.validation import *
......@@ -67,3 +72,14 @@ def test_known_spatial_uri(url_mock, get_mock, csv_mock):
assert data[('extras', 1, 'value')] == 'text'
assert data[('extras', 2, 'key')] == 'spatial'
assert data[('extras', 2, 'value')] == '0'
def test_validate_licenseAttributionByText():
# arrange
def get_licenses():
return {}
modelMock.Package.get_license_register = get_licenses
data = {'license_id': '0',
('extras', 0, 'key'): 'licenseAttributionByText',
('extras', 0, 'value'): ''}
validate_licenseAttributionByText('key', data, {}, None)
......@@ -104,6 +104,7 @@ def validate_licenseAttributionByText(key, data, errors,context):
isByLicense = True
break
hasAttribution=False
print(Missing)
for k in data:
if data[k] == 'licenseAttributionByText':
if isinstance(data[(k[0], k[1], 'value')], Missing) or (k[0], k[1], 'value') not in data:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment