Inserting additional assert to ensure a returned unique_ptr is always a new Python instance.

This commit is contained in:
Ralf W. Grosse-Kunstleve 2021-01-15 16:47:47 -08:00
parent ec86f10038
commit a72e5f0c8f

View File

@ -70,7 +70,13 @@ def test_pass_unique_ptr_disowns(pass_mpty, argm, rtrn):
def test_unique_ptr_roundtrip(num_round_trips=1000): def test_unique_ptr_roundtrip(num_round_trips=1000):
# Multiple roundtrips to stress-test instance registration/deregistration.
recycled = m.mpty("passenger") recycled = m.mpty("passenger")
for _ in range(num_round_trips): for _ in range(num_round_trips):
id_orig = id(recycled)
recycled = m.unique_ptr_roundtrip(recycled) recycled = m.unique_ptr_roundtrip(recycled)
assert m.get_mtxt(recycled) == "passenger" assert m.get_mtxt(recycled) == "passenger"
id_rtrn = id(recycled)
# Ensure the returned object is a different Python instance.
assert id_rtrn != id_orig
id_orig = id_rtrn