Skip to content

Commit

Permalink
Add tests
Browse files Browse the repository at this point in the history
  • Loading branch information
jpmckinney committed Sep 11, 2020
1 parent 6103760 commit 7831743
Show file tree
Hide file tree
Showing 2 changed files with 45 additions and 12 deletions.
14 changes: 11 additions & 3 deletions tests/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,10 +43,18 @@ def db():
cur.execute("INSERT INTO collection VALUES (3, 'paraguay_dncp_releases', NULL)")
cur.execute("INSERT INTO collection VALUES (4, 'paraguay_dncp_releases', 3)")
cur.execute("INSERT INTO collection VALUES (5, 'paraguay_dncp_releases', 4)")

cur.execute("INSERT INTO release VALUES (1, 1, 'ocds-213czf-1', 1)")
cur.execute("INSERT INTO record VALUES (1, 1, 'ocds-213czf-2', 2)")
cur.execute("""INSERT INTO data VALUES (1, '{"ocid":"ocds-213czf-1"}'::jsonb)""")
cur.execute("""INSERT INTO data VALUES (2, '{"ocid":"ocds-213czf-2","""
cur.execute("""INSERT INTO data VALUES (1, '{"ocid":"ocds-213czf-1","date":"2000"}'::jsonb)""")

cur.execute("INSERT INTO release VALUES (2, 1, 'ocds-213czf-1', 2)")
cur.execute("""INSERT INTO data VALUES (2, '{"ocid":"ocds-213czf-1","date":"2001"}'::jsonb)""")

cur.execute("INSERT INTO release VALUES (3, 1, 'ocds-213czf-1/a', 3)")
cur.execute("""INSERT INTO data VALUES (3, '{"ocid":"ocds-213czf-1/a"}'::jsonb)""")

cur.execute("INSERT INTO record VALUES (1, 1, 'ocds-213czf-2', 4)")
cur.execute("""INSERT INTO data VALUES (4, '{"ocid":"ocds-213czf-2","""
""""releases":[{"ocid":"ocds-213czf-2"}]}'::jsonb)""")

conn.commit()
Expand Down
43 changes: 34 additions & 9 deletions tests/test_module.py
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,10 @@ def test_download_package_from_ocid_release(download, db, tmpdir):
'publisher': {'name': ''},
'publishedDate': '9999-01-01T00:00:00Z',
'version': '1.1',
'releases': [{'ocid': 'ocds-213czf-1'}],
'releases': [
{'ocid': 'ocds-213czf-1', 'date': '2001'},
{'ocid': 'ocds-213czf-1', 'date': '2000'},
],
}

download.assert_called_once_with('ocds-213czf-1_release_package.json')
Expand All @@ -107,12 +110,34 @@ def test_download_package_from_ocid_record(download, db, tmpdir):
'version': '1.1',
'records': [{
'ocid': 'ocds-213czf-1',
'releases': [{'ocid': 'ocds-213czf-1'}],
'releases': [
{'ocid': 'ocds-213czf-1', 'date': '2001'},
{'ocid': 'ocds-213czf-1', 'date': '2000'},
],
}],
}

download.assert_called_once_with('ocds-213czf-1_record_package.json')

@patch('google.colab.files.download')
@patch('ocdskingfishercolab._notebook_id', _notebook_id)
def test_download_package_from_ocid_path_separator(download, db, tmpdir):
with chdir(tmpdir):
download_package_from_ocid(1, 'ocds-213czf-1/a', 'release')

with open('ocds-213czf-1_a_release_package.json') as f:
data = json.load(f)

assert data == {
'uri': 'placeholder:',
'publisher': {'name': ''},
'publishedDate': '9999-01-01T00:00:00Z',
'version': '1.1',
'releases': [{'ocid': 'ocds-213czf-1/a'}],
}

download.assert_called_once_with('ocds-213czf-1/a_release_package.json')


def test_download_package_from_ocid_other():
with pytest.raises(UnknownPackageTypeError) as excinfo:
Expand All @@ -130,7 +155,7 @@ def test_download_package_from_query_release(download, db, tmpdir):
"""

with chdir(tmpdir):
download_package_from_query(sql, {'collection_id': 1, 'ocid': 'ocds-213czf-1'}, 'release')
download_package_from_query(sql, {'collection_id': 1, 'ocid': 'ocds-213czf-1/a'}, 'release')

with open('release_package.json') as f:
data = json.load(f)
Expand All @@ -140,7 +165,7 @@ def test_download_package_from_query_release(download, db, tmpdir):
'publisher': {'name': ''},
'publishedDate': '9999-01-01T00:00:00Z',
'version': '1.1',
'releases': [{'ocid': 'ocds-213czf-1'}],
'releases': [{'ocid': 'ocds-213czf-1/a'}],
}

download.assert_called_once_with('release_package.json')
Expand Down Expand Up @@ -183,20 +208,20 @@ def test_download_package_from_query_other():

@patch('ocdskingfishercolab._notebook_id', _notebook_id)
def test_get_list_from_query(db):
result = get_list_from_query('SELECT * FROM release')
result = get_list_from_query('SELECT * FROM record')

assert result == [(1, 1, 'ocds-213czf-1', 1)]
assert result == [(1, 1, 'ocds-213czf-2', 4)]


@patch('ocdskingfishercolab._notebook_id', _notebook_id)
def test_get_dataframe_from_query(db):
dataframe = get_dataframe_from_query('SELECT * FROM release')
dataframe = get_dataframe_from_query('SELECT * FROM record')

assert dataframe.to_dict() == {
'collection_id': {0: 1},
'data_id': {0: 1},
'data_id': {0: 4},
'id': {0: 1},
'ocid': {0: 'ocds-213czf-1'},
'ocid': {0: 'ocds-213czf-2'},
}


Expand Down

0 comments on commit 7831743

Please sign in to comment.