From e9626e38c10e4d98c097552d91e0fcfe5195878f Mon Sep 17 00:00:00 2001 From: Paul O'Leary McCann Date: Wed, 14 Jul 2021 18:37:34 +0900 Subject: [PATCH] Fix serialization test This test was failing not because the thing it was testing wasn't working, but because of the way span equality works. Span equality relies on doc equality, and doc equality is object identity, so spans from different docs will never be equal. --- spacy/tests/pipeline/test_coref.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/spacy/tests/pipeline/test_coref.py b/spacy/tests/pipeline/test_coref.py index 27a9a5b46..933d17afe 100644 --- a/spacy/tests/pipeline/test_coref.py +++ b/spacy/tests/pipeline/test_coref.py @@ -93,8 +93,10 @@ def test_coref_serialization(nlp): spans_result2 = doc2.spans print(1, [(k, len(v)) for k, v in spans_result.items()]) print(2, [(k, len(v)) for k, v in spans_result2.items()]) + # Note: spans do not compare equal because docs are different and docs + # use object identity for equality for k, v in spans_result.items(): - assert spans_result[k] == spans_result2[k] + assert str(spans_result[k]) == str(spans_result2[k]) # assert spans_result == spans_result2