Files
BibAPI/tests/test_schemas.py

38 lines
1.4 KiB
Python

from src.bibapi.schemas.api_types import ALMASchema, DublinCoreSchema, PicaSchema
from src.bibapi.sru import QueryTransformer
arguments = [
"TITLE=Java ist auch eine Insel",
"AUTHOR=Ullenboom, Christian",
"YEAR=2020",
"PPN=1693321114",
]
def test_pica_schema():
transformer = QueryTransformer(PicaSchema, arguments)
transformed = transformer.transform()
assert len(transformed) == 4
assert transformed[0].startswith(PicaSchema.TITLE.value)
assert transformed[1].startswith(PicaSchema.AUTHOR.value)
assert transformed[2].startswith(PicaSchema.YEAR.value)
assert transformed[3].startswith(PicaSchema.PPN.value)
def test_alma_schema():
transformer = QueryTransformer(ALMASchema, arguments)
transformed = transformer.transform()
assert len(transformed) == 3 # PPN is not supported
assert transformed[0].startswith(ALMASchema.TITLE.value)
assert transformed[1].startswith(ALMASchema.AUTHOR.value)
assert transformed[2].startswith(ALMASchema.YEAR.value)
def test_dublin_core_schema():
transformer = QueryTransformer(DublinCoreSchema, arguments)
transformed = transformer.transform()
assert len(transformed) == 3 # YEAR is supported, PPN is not
assert transformed[0].startswith(DublinCoreSchema.TITLE.value)
assert transformed[1].startswith(DublinCoreSchema.AUTHOR.value)
assert transformed[2].startswith(DublinCoreSchema.YEAR.value)