Import normalizer: offline tool to normalize the raw archive spreadsheets #663

Merged
marcel merged 172 commits from docs/import-migration into main 2026-05-28 15:05:51 +02:00
Showing only changes of commit 29087319e6 - Show all commits

View File

@@ -71,3 +71,14 @@ def test_alias_index_suggestion():
idx = persons.AliasIndex(people) idx = persons.AliasIndex(people)
sid, score = idx.suggest("Hans Wittkop") # typo sid, score = idx.suggest("Hans Wittkop") # typo
assert sid == people[0].person_id and score >= config.FUZZY_SUGGEST_THRESHOLD assert sid == people[0].person_id and score >= config.FUZZY_SUGGEST_THRESHOLD
def test_alias_index_first_name_only_when_unambiguous():
people = persons.parse_register([
{"last_name": "Cram", "first_name": "Clara"},
{"last_name": "de Gruyter", "first_name": "Walter"},
{"last_name": "Cram", "first_name": "Walter"}, # 2nd "Walter" -> first name ambiguous
])
idx = persons.AliasIndex(people)
assert idx.resolve("Clara") == people[0].person_id # unique first name resolves
assert idx.resolve("Walter") is None # ambiguous first name does NOT resolve
assert idx.display(people[0].person_id) == "Clara Cram"