import json from fatcat_openapi_client import ReleaseEntity from fixtures import api from import_crossref import crossref_importer from fatcat_tools.transforms import entity_from_toml, entity_to_toml def test_basic_toml(crossref_importer): with open("tests/files/crossref-works.single.json", "r") as f: # not a single line raw = json.loads(f.read()) r = crossref_importer.parse_record(raw) r.state = "active" toml_str = entity_to_toml(r) r2 = entity_from_toml(toml_str, ReleaseEntity) assert r == r2 toml_str = entity_to_toml(r, pop_fields=["ident", "revision", "blah", "extra"]) r3 = entity_from_toml(toml_str, ReleaseEntity) assert r != r3