test_triple_export.py 1.1 KB

123456789101112131415161718192021222324
  1. from app.models import AtlasAlias, AtlasEntity, AtlasIdentifier, AtlasProvenance
  2. from app.triple_export import entity_to_turtle
  3. def test_entity_to_turtle_contains_expected_triples():
  4. entity = AtlasEntity(
  5. atlas_id="atlas:mid:/m/012gx2",
  6. canonical_label="Joe Biden",
  7. entity_type="Person",
  8. aliases=[AtlasAlias(label="Joe Biden")],
  9. identifiers=[AtlasIdentifier(value="/m/012gx2", source="google", identifier_type="mid")],
  10. provenance=[AtlasProvenance(source="google-trends", retrieval_method="trends-resolution", confidence=0.9, retrieved_at="2026-04-03T17:33:21.651528+00:00")],
  11. needs_curation=False,
  12. )
  13. ttl = entity_to_turtle(entity)
  14. assert '@prefix atlas: <http://world.eu.org/atlas_ontology#> .' in ttl
  15. assert 'atlas:canonicalLabel "Joe Biden"' in ttl
  16. assert 'atlas:hasCanonicalType atlas:Person' in ttl
  17. assert 'atlas:hasIdentifier' in ttl
  18. assert 'atlas:needsCuration false' in ttl
  19. assert 'a atlas:Claim' in ttl
  20. assert 'atlas:claimPredicate "atlas:hasIdentifier"' in ttl
  21. assert 'atlas:claimStatus "active"' in ttl