mirror of
https://github.com/explosion/spaCy.git
synced 2025-02-03 21:24:11 +03:00
Fix off-by-one error in nlp.add_pipe(after=name) (fixes #1654)
This commit is contained in:
parent
343fd2969d
commit
a31506e060
|
@ -260,7 +260,7 @@ class Language(object):
|
|||
elif before and before in self.pipe_names:
|
||||
self.pipeline.insert(self.pipe_names.index(before), pipe)
|
||||
elif after and after in self.pipe_names:
|
||||
self.pipeline.insert(self.pipe_names.index(after), pipe)
|
||||
self.pipeline.insert(self.pipe_names.index(after) + 1, pipe)
|
||||
else:
|
||||
msg = "Can't find '{}' in pipeline. Available names: {}"
|
||||
unfound = before or after
|
||||
|
|
|
@ -7,7 +7,6 @@ from ...language import Language
|
|||
from ...vocab import Vocab
|
||||
|
||||
|
||||
@pytest.mark.xfail
|
||||
def test_issue1654():
|
||||
nlp = Language(Vocab())
|
||||
assert not nlp.pipeline
|
||||
|
@ -15,3 +14,10 @@ def test_issue1654():
|
|||
nlp.add_pipe(lambda doc: doc, name='2', after='1')
|
||||
nlp.add_pipe(lambda doc: doc, name='3', after='2')
|
||||
assert nlp.pipe_names == ['1', '2', '3']
|
||||
|
||||
nlp2 = Language(Vocab())
|
||||
assert not nlp2.pipeline
|
||||
nlp2.add_pipe(lambda doc: doc, name='3')
|
||||
nlp2.add_pipe(lambda doc: doc, name='2', before='3')
|
||||
nlp2.add_pipe(lambda doc: doc, name='1', before='2')
|
||||
assert nlp2.pipe_names == ['1', '2', '3']
|
||||
|
|
Loading…
Reference in New Issue
Block a user