Start updating test

This commit is contained in:
Matthew Honnibal 2020-06-09 23:58:28 +02:00
parent 337d2b5ad6
commit 488727aee0

View File

@ -1,7 +1,8 @@
from spacy.errors import AlignmentError from spacy.errors import AlignmentError
from spacy.gold import biluo_tags_from_offsets, offsets_from_biluo_tags from spacy.gold import biluo_tags_from_offsets, offsets_from_biluo_tags
from spacy.gold import spans_from_biluo_tags, iob_to_biluo, align from spacy.gold import spans_from_biluo_tags, iob_to_biluo, align
from spacy.gold import GoldCorpus, docs_to_json, Example, DocAnnotation from spacy.gold import GoldCorpus, docs_to_json, DocAnnotation
from spacy.gold.new_example import NewExample as Example
from spacy.lang.en import English from spacy.lang.en import English
from spacy.syntax.nonproj import is_nonproj_tree from spacy.syntax.nonproj import is_nonproj_tree
from spacy.syntax.gold_parse import GoldParse, get_parses_from_example from spacy.syntax.gold_parse import GoldParse, get_parses_from_example
@ -91,7 +92,7 @@ def merged_dict():
"ids": [1, 2, 3, 4, 5, 6, 7], "ids": [1, 2, 3, 4, 5, 6, 7],
"words": ["Hi", "there", "everyone", "It", "is", "just", "me"], "words": ["Hi", "there", "everyone", "It", "is", "just", "me"],
"tags": ["INTJ", "ADV", "PRON", "PRON", "AUX", "ADV", "PRON"], "tags": ["INTJ", "ADV", "PRON", "PRON", "AUX", "ADV", "PRON"],
"sent_starts": [1, 0, 0, 1, 0, 0, 0, 0], "sent_starts": [1, 0, 0, 1, 0, 0, 0],
} }
@ -482,8 +483,8 @@ def _train(train_data):
def test_split_sents(merged_dict): def test_split_sents(merged_dict):
nlp = English() nlp = English()
example = Example.from_dict( example = Example.from_dict(
merged_dict, Doc(nlp.vocab, words=merged_dict["words"]),
doc=Doc(nlp.vocab, words=merged_dict["words"]) merged_dict
) )
assert len(get_parses_from_example( assert len(get_parses_from_example(
example, example,
@ -514,24 +515,20 @@ def test_split_sents(merged_dict):
assert token_annotation_2.sent_starts == [1, 0, 0, 0] assert token_annotation_2.sent_starts == [1, 0, 0, 0]
# This fails on some None value? Need to look into that.
@pytest.mark.xfail # TODO
def test_tuples_to_example(vocab, merged_dict): def test_tuples_to_example(vocab, merged_dict):
cats = {"TRAVEL": 1.0, "BAKING": 0.0} cats = {"TRAVEL": 1.0, "BAKING": 0.0}
merged_dict = dict(merged_dict) merged_dict = dict(merged_dict)
merged_dict["cats"] = cats merged_dict["cats"] = cats
ex = Example.from_dict( ex = Example.from_dict(
merged_dict, Doc(vocab, words=merged_dict["words"]),
doc=Doc(vocab, words=merged_dict["words"]) merged_dict
) )
ex_dict = ex.to_dict() words = [token.text for token in ex.reference]
assert ex_dict["token_annotation"]["ids"] == merged_dict["ids"] assert words == merged_dict["words"]
assert ex_dict["token_annotation"]["words"] == merged_dict["words"] tags = [token.tag_ for token in ex.reference]
assert ex_dict["token_annotation"]["tags"] == merged_dict["tags"] assert tags == merged_dict["tags"]
assert ex_dict["token_annotation"]["sent_starts"] == merged_dict["sent_starts"] sent_starts = [token.is_sent_start for token in ex.reference]
assert ex_dict["doc_annotation"]["cats"] == cats assert sent_starts == [bool(v) for v in merged_dict["sent_starts"]]
example.reference.cats == cats
def test_empty_example_goldparse():
nlp = English()
doc = nlp("")
example = Example(doc=doc)
assert len(get_parses_from_example(example)) == 1