mirror of https://github.com/explosion/spaCy.git
Modernise Doc array tests and don't depend on models
This commit is contained in:
parent
05447be884
commit
439f396acd
|
@ -1,38 +1,42 @@
|
|||
# coding: utf-8
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from ...attrs import ORTH, SHAPE, POS, DEP
|
||||
from ..util import get_doc
|
||||
|
||||
import pytest
|
||||
|
||||
from spacy import attrs
|
||||
|
||||
|
||||
def test_attr_of_token(EN):
|
||||
text = u'An example sentence.'
|
||||
tokens = EN(text, tag=True, parse=False)
|
||||
example = EN.vocab[u'example']
|
||||
def test_array_attr_of_token(en_tokenizer, en_vocab):
|
||||
text = "An example sentence"
|
||||
tokens = en_tokenizer(text)
|
||||
example = tokens.vocab["example"]
|
||||
assert example.orth != example.shape
|
||||
feats_array = tokens.to_array((attrs.ORTH, attrs.SHAPE))
|
||||
feats_array = tokens.to_array((ORTH, SHAPE))
|
||||
assert feats_array[0][0] != feats_array[0][1]
|
||||
assert feats_array[0][0] != feats_array[0][1]
|
||||
|
||||
|
||||
@pytest.mark.models
|
||||
def test_tag(EN):
|
||||
text = u'A nice sentence.'
|
||||
tokens = EN(text)
|
||||
assert tokens[0].tag != tokens[1].tag != tokens[2].tag != tokens[3].tag
|
||||
feats_array = tokens.to_array((attrs.ORTH, attrs.TAG))
|
||||
assert feats_array[0][1] == tokens[0].tag
|
||||
assert feats_array[1][1] == tokens[1].tag
|
||||
assert feats_array[2][1] == tokens[2].tag
|
||||
assert feats_array[3][1] == tokens[3].tag
|
||||
def test_array_tag(en_tokenizer):
|
||||
text = "A nice sentence."
|
||||
tags = ['DET', 'ADJ', 'NOUN', 'PUNCT']
|
||||
tokens = en_tokenizer(text)
|
||||
doc = get_doc(tokens.vocab, [t.text for t in tokens], tags=tags)
|
||||
assert doc[0].pos != doc[1].pos != doc[2].pos != doc[3].pos
|
||||
feats_array = doc.to_array((ORTH, POS))
|
||||
assert feats_array[0][1] == doc[0].pos
|
||||
assert feats_array[1][1] == doc[1].pos
|
||||
assert feats_array[2][1] == doc[2].pos
|
||||
assert feats_array[3][1] == doc[3].pos
|
||||
|
||||
|
||||
@pytest.mark.models
|
||||
def test_dep(EN):
|
||||
text = u'A nice sentence.'
|
||||
tokens = EN(text)
|
||||
feats_array = tokens.to_array((attrs.ORTH, attrs.DEP))
|
||||
assert feats_array[0][1] == tokens[0].dep
|
||||
assert feats_array[1][1] == tokens[1].dep
|
||||
assert feats_array[2][1] == tokens[2].dep
|
||||
assert feats_array[3][1] == tokens[3].dep
|
||||
def test_array_dep(en_tokenizer):
|
||||
text = "A nice sentence."
|
||||
deps = ['det', 'amod', 'ROOT', 'punct']
|
||||
tokens = en_tokenizer(text)
|
||||
doc = get_doc(tokens.vocab, [t.text for t in tokens], deps=deps)
|
||||
feats_array = doc.to_array((ORTH, DEP))
|
||||
assert feats_array[0][1] == doc[0].dep
|
||||
assert feats_array[1][1] == doc[1].dep
|
||||
assert feats_array[2][1] == doc[2].dep
|
||||
assert feats_array[3][1] == doc[3].dep
|
||||
|
|
Loading…
Reference in New Issue