test(normalizer): cover AliasIndex unambiguous first-name resolution
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -71,3 +71,14 @@ def test_alias_index_suggestion():
|
||||
idx = persons.AliasIndex(people)
|
||||
sid, score = idx.suggest("Hans Wittkop") # typo
|
||||
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"
|
||||
|
||||
Reference in New Issue
Block a user