mirror of
https://github.com/explosion/spaCy.git
synced 2025-03-03 19:08:06 +03:00
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
|
# coding: utf-8
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
from ...attrs import ORTH, SHAPE, POS, DEP
|
||||||
|
from ..util import get_doc
|
||||||
|
|
||||||
import pytest
|
import pytest
|
||||||
|
|
||||||
from spacy import attrs
|
|
||||||
|
|
||||||
|
def test_array_attr_of_token(en_tokenizer, en_vocab):
|
||||||
def test_attr_of_token(EN):
|
text = "An example sentence"
|
||||||
text = u'An example sentence.'
|
tokens = en_tokenizer(text)
|
||||||
tokens = EN(text, tag=True, parse=False)
|
example = tokens.vocab["example"]
|
||||||
example = EN.vocab[u'example']
|
|
||||||
assert example.orth != example.shape
|
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]
|
assert feats_array[0][0] != feats_array[0][1]
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.models
|
def test_array_tag(en_tokenizer):
|
||||||
def test_tag(EN):
|
text = "A nice sentence."
|
||||||
text = u'A nice sentence.'
|
tags = ['DET', 'ADJ', 'NOUN', 'PUNCT']
|
||||||
tokens = EN(text)
|
tokens = en_tokenizer(text)
|
||||||
assert tokens[0].tag != tokens[1].tag != tokens[2].tag != tokens[3].tag
|
doc = get_doc(tokens.vocab, [t.text for t in tokens], tags=tags)
|
||||||
feats_array = tokens.to_array((attrs.ORTH, attrs.TAG))
|
assert doc[0].pos != doc[1].pos != doc[2].pos != doc[3].pos
|
||||||
assert feats_array[0][1] == tokens[0].tag
|
feats_array = doc.to_array((ORTH, POS))
|
||||||
assert feats_array[1][1] == tokens[1].tag
|
assert feats_array[0][1] == doc[0].pos
|
||||||
assert feats_array[2][1] == tokens[2].tag
|
assert feats_array[1][1] == doc[1].pos
|
||||||
assert feats_array[3][1] == tokens[3].tag
|
assert feats_array[2][1] == doc[2].pos
|
||||||
|
assert feats_array[3][1] == doc[3].pos
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.models
|
def test_array_dep(en_tokenizer):
|
||||||
def test_dep(EN):
|
text = "A nice sentence."
|
||||||
text = u'A nice sentence.'
|
deps = ['det', 'amod', 'ROOT', 'punct']
|
||||||
tokens = EN(text)
|
tokens = en_tokenizer(text)
|
||||||
feats_array = tokens.to_array((attrs.ORTH, attrs.DEP))
|
doc = get_doc(tokens.vocab, [t.text for t in tokens], deps=deps)
|
||||||
assert feats_array[0][1] == tokens[0].dep
|
feats_array = doc.to_array((ORTH, DEP))
|
||||||
assert feats_array[1][1] == tokens[1].dep
|
assert feats_array[0][1] == doc[0].dep
|
||||||
assert feats_array[2][1] == tokens[2].dep
|
assert feats_array[1][1] == doc[1].dep
|
||||||
assert feats_array[3][1] == tokens[3].dep
|
assert feats_array[2][1] == doc[2].dep
|
||||||
|
assert feats_array[3][1] == doc[3].dep
|
||||||
|
|
Loading…
Reference in New Issue
Block a user