Skip to content

Commit

Permalink
Address comments
Browse files Browse the repository at this point in the history
* Undo changes to 'aardvark_record_all_fields.jsonl'
* Split up tests for MITAardvark.get_rights field method
* Remove condition that checks for presence of 'dct_AccessRights_s'
  • Loading branch information
jonavellecuerdo committed Feb 20, 2024
1 parent 14d9af5 commit 0ec0931
Show file tree
Hide file tree
Showing 2 changed files with 50 additions and 34 deletions.
42 changes: 31 additions & 11 deletions tests/sources/json/test_aardvark.py
Original file line number Diff line number Diff line change
Expand Up @@ -309,10 +309,11 @@ def test_aardvark_get_rights_success(aardvark_record_all_fields):
),
]

aardvark_record_all_fields_mit_restricted = next(aardvark_record_all_fields)
assert MITAardvark.get_rights(
"gismit", aardvark_record_all_fields_mit_restricted
) == [

def test_aardvark_get_rights_mit_restricted_success(aardvark_record_all_fields):
aardvark_record = next(aardvark_record_all_fields)
aardvark_record["dct_accessRights_s"] = "Restricted"
assert MITAardvark.get_rights("gismit", aardvark_record) == [
timdex.Rights(description="Restricted", kind="Access"),
timdex.Rights(
description="Requires MIT authentication", kind="Access to files"
Expand All @@ -325,10 +326,13 @@ def test_aardvark_get_rights_success(aardvark_record_all_fields):
),
]

aardvark_record_all_fields_mit_public = next(aardvark_record_all_fields)
assert MITAardvark.get_rights("gismit", aardvark_record_all_fields_mit_public) == [

def test_aardvark_get_rights_mit_public_success(aardvark_record_all_fields):
aardvark_record = next(aardvark_record_all_fields)
aardvark_record["dct_accessRights_s"] = "Public"
assert MITAardvark.get_rights("gismit", aardvark_record) == [
timdex.Rights(description="Public", kind="Access"),
timdex.Rights(description="Free/open-access", kind="Access to files"),
timdex.Rights(description="Free/open to all", kind="Access to files"),
timdex.Rights(uri="http://license.license"),
timdex.Rights(uri="http://another_license.another_license"),
timdex.Rights(description="Some person has the rights"),
Expand All @@ -337,10 +341,11 @@ def test_aardvark_get_rights_success(aardvark_record_all_fields):
),
]

aardvark_record_all_fields_ogm_restricted = next(aardvark_record_all_fields)
assert MITAardvark.get_rights(
"gisogm", aardvark_record_all_fields_ogm_restricted
) == [

def test_aardvark_get_rights_external_restricted_success(aardvark_record_all_fields):
aardvark_record = next(aardvark_record_all_fields)
aardvark_record["dct_accessRights_s"] = "Restricted"
assert MITAardvark.get_rights("gisogm", aardvark_record) == [
timdex.Rights(description="Restricted", kind="Access"),
timdex.Rights(description="Not owned by MIT", kind="Access to files"),
timdex.Rights(uri="http://license.license"),
Expand All @@ -352,6 +357,21 @@ def test_aardvark_get_rights_success(aardvark_record_all_fields):
]


def test_aardvark_get_rights_external_public_success(aardvark_record_all_fields):
aardvark_record = next(aardvark_record_all_fields)
aardvark_record["dct_accessRights_s"] = "Public"
assert MITAardvark.get_rights("gisogm", aardvark_record) == [
timdex.Rights(description="Public", kind="Access"),
timdex.Rights(description="Not owned by MIT", kind="Access to files"),
timdex.Rights(uri="http://license.license"),
timdex.Rights(uri="http://another_license.another_license"),
timdex.Rights(description="Some person has the rights"),
timdex.Rights(
description="The person with the rights. Another person with the rights"
),
]


def test_aardvark_get_subjects_success(aardvark_record_all_fields):
assert MITAardvark.get_subjects(next(aardvark_record_all_fields)) == [
timdex.Subject(value=["Country"], kind="DCAT; Keyword"),
Expand Down
42 changes: 19 additions & 23 deletions transmogrifier/sources/json/aardvark.py
Original file line number Diff line number Diff line change
Expand Up @@ -388,37 +388,33 @@ def get_publication_information(source_record: dict) -> list[str]:
def get_rights(source: str, source_record: dict) -> list[timdex.Rights]:
"""Get values from source record for TIMDEX rights field."""
rights = []
kind_access_to_files = "Access to files"

if "dct_accessRights_s" in source_record:
kind_access_rights = "Access"
kind_access_to_files = "Access to files"
rights.append(
timdex.Rights(
description=source_record["dct_accessRights_s"],
kind=kind_access_rights,
)
rights.append(
timdex.Rights(
description=source_record["dct_accessRights_s"],
kind="Access",
)
)

if source == "gisogm":
if source == "gisogm":
rights.append(
timdex.Rights(description="Not owned by MIT", kind=kind_access_to_files)
)
elif source == "gismit":
if source_record["dct_accessRights_s"] == "Restricted":
rights.append(
timdex.Rights(
description="Not owned by MIT", kind=kind_access_to_files
description="Requires MIT authentication",
kind=kind_access_to_files,
)
)
elif source == "gismit":
if source_record["dct_accessRights_s"] == "Restricted":
rights.append(
timdex.Rights(
description="Requires MIT authentication",
kind=kind_access_to_files,
)
)
else:
rights.append(
timdex.Rights(
description="Free/open-access", kind=kind_access_to_files
)
else:
rights.append(
timdex.Rights(
description="Free/open to all", kind=kind_access_to_files
)
)

rights.extend(
[
Expand Down

0 comments on commit 0ec0931

Please sign in to comment.