diff --git a/spacy/tests/regression/test_issue3209.py b/spacy/tests/regression/test_issue3209.py new file mode 100644 index 000000000..a23d73b49 --- /dev/null +++ b/spacy/tests/regression/test_issue3209.py @@ -0,0 +1,22 @@ +'''Test that labels are mapped to classes consistently when loading NER model.''' +from __future__ import unicode_literals +from spacy.lang.en import English + +def test_issue3209(): + '''Test issue that occurred in spaCy nightly where NER labels were being + mapped to classes incorrectly after loading the model, when the labels + were added using ner.add_label(). + ''' + nlp = English() + ner = nlp.create_pipe('ner') + nlp.add_pipe(ner) + + ner.add_label('ANIMAL') + nlp.begin_training() + move_names = ['O', 'B-ANIMAL', 'I-ANIMAL', 'L-ANIMAL', 'U-ANIMAL'] + assert ner.move_names == move_names + nlp2 = English() + nlp2.add_pipe(nlp2.create_pipe('ner')) + nlp2.from_bytes(nlp.to_bytes()) + assert nlp2.get_pipe('ner').move_names == move_names +