From 0b4b176e458f57cfd2acf33e6846651123a28f6d Mon Sep 17 00:00:00 2001 From: Jonavelle Cuerdo Date: Wed, 22 Oct 2025 12:36:35 -0400 Subject: [PATCH] Update 'format' and 'contributor.kind' values for MITLibWebsite Why these changes are being introduced: * A comparison of values for TIMDEX fields considered for the MITLibWebsite transformer vs. other TIMDEX sources led to the proposed updates. How this addresses that need: * Set format = 'electronic resource' * Set contributor.kind = 'creator' Side effects of this change: * None Relevant ticket(s): * https://mitlibraries.atlassian.net/browse/USE-69 --- tests/sources/json/test_mitlibwebsite.py | 11 +++++++++-- transmogrifier/sources/json/mitlibwebsite.py | 5 ++++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/tests/sources/json/test_mitlibwebsite.py b/tests/sources/json/test_mitlibwebsite.py index 0fc44f0..752dca2 100644 --- a/tests/sources/json/test_mitlibwebsite.py +++ b/tests/sources/json/test_mitlibwebsite.py @@ -28,11 +28,12 @@ def test_mitlibwebsite_transform_returns_timdex_record(mitlibwebsite_records): value="MIT Libraries", affiliation=None, identifier=None, - kind="Creator", + kind="creator", mit_affiliated=True, ) ], dates=[timdex.Date(value="2000-01-01T00:00:00", kind="Accessed")], + format="electronic resource", links=[ timdex.Link( url="https://libraries.mit.edu/search/", @@ -90,7 +91,7 @@ def test_mitlibwebsite_get_content_type_success(): def test_mitlibwebsite_get_contributors_success(): source_record = create_mitlibwebsite_source_record_stub() assert MITLibWebsite.get_contributors(source_record) == [ - timdex.Contributor(value="MIT Libraries", kind="Creator", mit_affiliated=True) + timdex.Contributor(value="MIT Libraries", kind="creator", mit_affiliated=True) ] @@ -102,6 +103,12 @@ def test_mitlibwebsite_get_dates_success(): ] +def test_mitlibwebsite_get_format_success(): + source_record = create_mitlibwebsite_source_record_stub() + mitlibwebsite = MITLibWebsite("mitlibwebsite", iter([source_record])) + assert mitlibwebsite.get_format(source_record) == "electronic resource" + + def test_mitlibwebsite_get_links_success(): source_record = create_mitlibwebsite_source_record_stub() assert MITLibWebsite.get_links(source_record) == [ diff --git a/transmogrifier/sources/json/mitlibwebsite.py b/transmogrifier/sources/json/mitlibwebsite.py index 88df5d7..c933e56 100644 --- a/transmogrifier/sources/json/mitlibwebsite.py +++ b/transmogrifier/sources/json/mitlibwebsite.py @@ -72,12 +72,15 @@ def get_content_type(cls, _source_record: dict) -> list[str]: @classmethod def get_contributors(cls, _source_record: dict) -> list[timdex.Contributor]: return [ - timdex.Contributor(value="MIT Libraries", kind="Creator", mit_affiliated=True) + timdex.Contributor(value="MIT Libraries", kind="creator", mit_affiliated=True) ] def get_dates(self, _source_record: dict) -> list[timdex.Date]: return [timdex.Date(value=self.run_data["run_timestamp"], kind="Accessed")] + def get_format(self, _source_record: dict) -> str: + return "electronic resource" + @classmethod def get_links(cls, source_record: dict) -> list[timdex.Link]: return [timdex.Link(url=source_record["url"], kind="Website")]