I think people.getById() should return if Person.merged is None. Otherwise, it needs to enter a recursive call to get an unmerged person.
if person.merged is None:
return person
else:
return people.getById(person.merged)
Suspension and deactivation are not permanent. This case is ambiguous and I do not think it should block this branch.
I wonder if this should return None of the person is a team? Teams are deleted by merging them with ~registry. There are hundreds of deleted teams that will ultimately return ~registry.
Supporting the merge case is probably all we needs to do to close this bug.
I think people.getById() should return if Person.merged is None. Otherwise, it needs to enter a recursive call to get an unmerged person. getById( person. merged)
if person.merged is None:
return person
else:
return people.
Suspension and deactivation are not permanent. This case is ambiguous and I do not think it should block this branch.
I wonder if this should return None of the person is a team? Teams are deleted by merging them with ~registry. There are hundreds of deleted teams that will ultimately return ~registry.
Supporting the merge case is probably all we needs to do to close this bug.