diff --git a/bookwyrm/importers/openlibrary_import.py b/bookwyrm/importers/openlibrary_import.py index 038ecb8c0..ef1030609 100644 --- a/bookwyrm/importers/openlibrary_import.py +++ b/bookwyrm/importers/openlibrary_import.py @@ -6,3 +6,8 @@ class OpenLibraryImporter(Importer): """csv downloads from OpenLibrary""" service = "OpenLibrary" + + def __init__(self, *args, **kwargs): + self.row_mappings_guesses.append(("openlibrary_key", ["edition id"])) + self.row_mappings_guesses.append(("openlibrary_work_key", ["work id"])) + super().__init__(*args, **kwargs) diff --git a/bookwyrm/tests/importers/test_openlibrary_import.py b/bookwyrm/tests/importers/test_openlibrary_import.py index 8a5c6cdef..467259137 100644 --- a/bookwyrm/tests/importers/test_openlibrary_import.py +++ b/bookwyrm/tests/importers/test_openlibrary_import.py @@ -56,6 +56,15 @@ class OpenLibraryImport(TestCase): self.assertEqual(import_items[1].data["Edition Id"], "OL7798182M") self.assertEqual(import_items[0].normalized_data["shelf"], "reading") + self.assertIsNone(import_items[0].normalized_data["openlibrary_key"]) + self.assertEqual( + import_items[0].normalized_data["openlibrary_work_key"], + "OL102749W" + ) + self.assertEqual( + import_items[1].normalized_data["openlibrary_key"], + "OL7798182M" + ) self.assertEqual(import_items[2].normalized_data["shelf"], "to-read") self.assertEqual(import_items[3].normalized_data["shelf"], "read")