mirror of
https://github.com/explosion/spaCy.git
synced 2024-11-10 19:57:17 +03:00
Tidy up and format remaining files
This commit is contained in:
parent
2a95133138
commit
323fc26880
1
.flake8
1
.flake8
|
@ -11,3 +11,4 @@ exclude =
|
|||
_tokenizer_exceptions_list.py,
|
||||
spacy/lang/fr/lemmatizer,
|
||||
spacy/lang/nb/lemmatizer
|
||||
spacy/__init__.py
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
# coding: utf8
|
||||
from __future__ import unicode_literals
|
||||
import warnings
|
||||
|
||||
warnings.filterwarnings("ignore", message="numpy.dtype size changed")
|
||||
warnings.filterwarnings("ignore", message="numpy.ufunc size changed")
|
||||
|
||||
|
@ -15,7 +16,7 @@ from . import util
|
|||
|
||||
|
||||
def load(name, **overrides):
|
||||
depr_path = overrides.get('path')
|
||||
depr_path = overrides.get("path")
|
||||
if depr_path not in (True, False, None):
|
||||
deprecation_warning(Warnings.W001.format(path=depr_path))
|
||||
return util.load_model(name, **overrides)
|
||||
|
|
|
@ -29,7 +29,7 @@ from . import util
|
|||
try:
|
||||
import torch.nn
|
||||
from thinc.extra.wrappers import PyTorchWrapperRNN
|
||||
except:
|
||||
except ImportError:
|
||||
torch = None
|
||||
|
||||
VECTORS_KEY = "spacy_pretrained_vectors"
|
||||
|
|
|
@ -479,14 +479,11 @@ class Language(object):
|
|||
for _, annots_brackets in get_gold_tuples():
|
||||
for annots, _ in annots_brackets:
|
||||
for word in annots[1]:
|
||||
_ = self.vocab[word]
|
||||
contexts = []
|
||||
_ = self.vocab[word] # noqa: F841
|
||||
if cfg.get("device", -1) >= 0:
|
||||
device = util.use_gpu(cfg["device"])
|
||||
util.use_gpu(cfg["device"])
|
||||
if self.vocab.vectors.data.shape[1] >= 1:
|
||||
self.vocab.vectors.data = Model.ops.asarray(self.vocab.vectors.data)
|
||||
else:
|
||||
device = None
|
||||
link_vectors_to_models(self.vocab)
|
||||
if self.vocab.vectors.data.shape[1]:
|
||||
cfg["pretrained_vectors"] = self.vocab.vectors.name
|
||||
|
@ -742,7 +739,7 @@ class Language(object):
|
|||
if not hasattr(proc, "from_bytes"):
|
||||
continue
|
||||
deserializers[i] = lambda b, proc=proc: proc.from_bytes(b, vocab=False)
|
||||
msg = util.from_bytes(bytes_data, deserializers, {})
|
||||
util.from_bytes(bytes_data, deserializers, {})
|
||||
return self
|
||||
|
||||
|
||||
|
|
|
@ -97,13 +97,13 @@ def da_tokenizer():
|
|||
|
||||
@pytest.fixture(scope="session")
|
||||
def ja_tokenizer():
|
||||
mecab = pytest.importorskip("MeCab")
|
||||
pytest.importorskip("MeCab")
|
||||
return get_lang_class("ja").Defaults.create_tokenizer()
|
||||
|
||||
|
||||
@pytest.fixture(scope="session")
|
||||
def th_tokenizer():
|
||||
pythainlp = pytest.importorskip("pythainlp")
|
||||
pytest.importorskip("pythainlp")
|
||||
return get_lang_class("th").Defaults.create_tokenizer()
|
||||
|
||||
|
||||
|
@ -112,9 +112,9 @@ def tr_tokenizer():
|
|||
return get_lang_class("tr").Defaults.create_tokenizer()
|
||||
|
||||
|
||||
@pytest.fixture(scope='session')
|
||||
@pytest.fixture(scope="session")
|
||||
def ca_tokenizer():
|
||||
return get_lang_class('ca').Defaults.create_tokenizer()
|
||||
return get_lang_class("ca").Defaults.create_tokenizer()
|
||||
|
||||
|
||||
@pytest.fixture(scope="session")
|
||||
|
@ -139,7 +139,7 @@ def ur_tokenizer():
|
|||
|
||||
@pytest.fixture(scope="session")
|
||||
def ru_tokenizer():
|
||||
pymorphy = pytest.importorskip("pymorphy2")
|
||||
pytest.importorskip("pymorphy2")
|
||||
return get_lang_class("ru").Defaults.create_tokenizer()
|
||||
|
||||
|
||||
|
|
|
@ -14,15 +14,13 @@ def test_doc_add_entities_set_ents_iob(en_vocab):
|
|||
ner = EntityRecognizer(en_vocab)
|
||||
ner.begin_training([])
|
||||
ner(doc)
|
||||
|
||||
assert len(list(doc.ents)) == 0
|
||||
assert [w.ent_iob_ for w in doc] == (['O'] * len(doc))
|
||||
assert [w.ent_iob_ for w in doc] == (["O"] * len(doc))
|
||||
doc.ents = [(doc.vocab.strings["ANIMAL"], 3, 4)]
|
||||
assert [w.ent_iob_ for w in doc] == ["", "", "", "B"]
|
||||
doc.ents = [(doc.vocab.strings["WORD"], 0, 2)]
|
||||
assert [w.ent_iob_ for w in doc] == ["B", "I", "", ""]
|
||||
|
||||
doc.ents = [(doc.vocab.strings['ANIMAL'], 3, 4)]
|
||||
assert [w.ent_iob_ for w in doc] == ['', '', '', 'B']
|
||||
|
||||
doc.ents = [(doc.vocab.strings['WORD'], 0, 2)]
|
||||
assert [w.ent_iob_ for w in doc] == ['B', 'I', '', '']
|
||||
|
||||
def test_add_overlapping_entities(en_vocab):
|
||||
text = ["Louisiana", "Office", "of", "Conservation"]
|
||||
|
|
|
@ -174,18 +174,20 @@ def test_doc_api_merge(en_tokenizer):
|
|||
doc = en_tokenizer(text)
|
||||
assert len(doc) == 9
|
||||
with doc.retokenize() as retokenizer:
|
||||
retokenizer.merge(doc[4: 7], attrs={'tag':'NAMED', 'lemma':'LEMMA',
|
||||
'ent_type':'TYPE'})
|
||||
retokenizer.merge(doc[7: 9], attrs={'tag':'NAMED', 'lemma':'LEMMA',
|
||||
'ent_type':'TYPE'})
|
||||
retokenizer.merge(
|
||||
doc[4:7], attrs={"tag": "NAMED", "lemma": "LEMMA", "ent_type": "TYPE"}
|
||||
)
|
||||
retokenizer.merge(
|
||||
doc[7:9], attrs={"tag": "NAMED", "lemma": "LEMMA", "ent_type": "TYPE"}
|
||||
)
|
||||
|
||||
assert len(doc) == 6
|
||||
assert doc[4].text == 'the beach boys'
|
||||
assert doc[4].text_with_ws == 'the beach boys '
|
||||
assert doc[4].tag_ == 'NAMED'
|
||||
assert doc[5].text == 'all night'
|
||||
assert doc[5].text_with_ws == 'all night'
|
||||
assert doc[5].tag_ == 'NAMED'
|
||||
assert doc[4].text == "the beach boys"
|
||||
assert doc[4].text_with_ws == "the beach boys "
|
||||
assert doc[4].tag_ == "NAMED"
|
||||
assert doc[5].text == "all night"
|
||||
assert doc[5].text_with_ws == "all night"
|
||||
assert doc[5].tag_ == "NAMED"
|
||||
|
||||
|
||||
def test_doc_api_merge_children(en_tokenizer):
|
||||
|
|
|
@ -16,7 +16,7 @@ def test_pickle_single_doc():
|
|||
def test_list_of_docs_pickles_efficiently():
|
||||
nlp = Language()
|
||||
for i in range(10000):
|
||||
_ = nlp.vocab[unicode_(i)]
|
||||
_ = nlp.vocab[unicode_(i)] # noqa: F841
|
||||
one_pickled = pickle.dumps(nlp("0"), -1)
|
||||
docs = list(nlp.pipe(unicode_(i) for i in range(100)))
|
||||
many_pickled = pickle.dumps(docs, -1)
|
||||
|
@ -33,7 +33,7 @@ def test_user_data_from_disk():
|
|||
doc.user_data[(0, 1)] = False
|
||||
b = doc.to_bytes()
|
||||
doc2 = doc.__class__(doc.vocab).from_bytes(b)
|
||||
assert doc2.user_data[(0, 1)] == False
|
||||
assert doc2.user_data[(0, 1)] is False
|
||||
|
||||
|
||||
def test_user_data_unpickles():
|
||||
|
@ -42,7 +42,7 @@ def test_user_data_unpickles():
|
|||
doc.user_data[(0, 1)] = False
|
||||
b = pickle.dumps(doc)
|
||||
doc2 = pickle.loads(b)
|
||||
assert doc2.user_data[(0, 1)] == False
|
||||
assert doc2.user_data[(0, 1)] is False
|
||||
|
||||
|
||||
def test_hooks_unpickle():
|
||||
|
|
|
@ -87,7 +87,7 @@ def test_span_np_merges(en_tokenizer):
|
|||
ents = [(e[0].idx, e[-1].idx + len(e[-1]), e.label_, e.lemma_) for e in doc.ents]
|
||||
for start, end, label, lemma in ents:
|
||||
merged = doc.merge(start, end, tag=label, lemma=lemma, ent_type=label)
|
||||
assert merged != None, (start, end, label, lemma)
|
||||
assert merged is not None, (start, end, label, lemma)
|
||||
|
||||
text = "One test with entities like New York City so the ents list is not void"
|
||||
heads = [1, 11, -1, -1, -1, 1, 1, -3, 4, 2, 1, 1, 0, -1, -2]
|
||||
|
@ -95,7 +95,7 @@ def test_span_np_merges(en_tokenizer):
|
|||
doc = get_doc(tokens.vocab, words=[t.text for t in tokens], heads=heads)
|
||||
for span in doc.ents:
|
||||
merged = doc.merge()
|
||||
assert merged != None, (span.start, span.end, span.label_, span.lemma_)
|
||||
assert merged is not None, (span.start, span.end, span.label_, span.lemma_)
|
||||
|
||||
|
||||
def test_spans_entity_merge(en_tokenizer):
|
||||
|
|
|
@ -22,9 +22,9 @@ def test_doc_underscore_getattr_setattr():
|
|||
doc.user_data = {}
|
||||
Underscore.doc_extensions["hello"] = (False, None, None, None)
|
||||
doc._ = Underscore(Underscore.doc_extensions, doc)
|
||||
assert doc._.hello == False
|
||||
assert doc._.hello is False
|
||||
doc._.hello = True
|
||||
assert doc._.hello == True
|
||||
assert doc._.hello is True
|
||||
|
||||
|
||||
def test_create_span_underscore():
|
||||
|
|
|
@ -9,5 +9,5 @@ def test_ar_tokenizer_handles_long_text(ar_tokenizer):
|
|||
و قد نجح في الحصول على جائزة نوبل للآداب، ليكون بذلك العربي الوحيد الذي فاز بها."""
|
||||
|
||||
tokens = ar_tokenizer(text)
|
||||
assert tokens[3].is_stop == True
|
||||
assert tokens[3].is_stop is True
|
||||
assert len(tokens) == 77
|
||||
|
|
|
@ -9,13 +9,12 @@ from spacy.lang.en.syntax_iterators import SYNTAX_ITERATORS
|
|||
from ...util import get_doc
|
||||
|
||||
|
||||
def test_en_noun_chunks_not_nested(en_tokenizer):
|
||||
text = "Peter has chronic command and control issues"
|
||||
def test_en_noun_chunks_not_nested(en_vocab):
|
||||
words = ["Peter", "has", "chronic", "command", "and", "control", "issues"]
|
||||
heads = [1, 0, 4, 3, -1, -2, -5]
|
||||
deps = ["nsubj", "ROOT", "amod", "nmod", "cc", "conj", "dobj"]
|
||||
tokens = en_tokenizer(text)
|
||||
doc = get_doc(tokens.vocab, words=[t.text for t in tokens], heads=heads, deps=deps)
|
||||
tokens.from_array(
|
||||
doc = get_doc(en_vocab, words=words, heads=heads, deps=deps)
|
||||
doc.from_array(
|
||||
[HEAD, DEP],
|
||||
numpy.asarray(
|
||||
[
|
||||
|
@ -30,11 +29,11 @@ def test_en_noun_chunks_not_nested(en_tokenizer):
|
|||
dtype="uint64",
|
||||
),
|
||||
)
|
||||
tokens.noun_chunks_iterator = SYNTAX_ITERATORS["noun_chunks"]
|
||||
doc.noun_chunks_iterator = SYNTAX_ITERATORS["noun_chunks"]
|
||||
word_occurred = {}
|
||||
for chunk in tokens.noun_chunks:
|
||||
for chunk in doc.noun_chunks:
|
||||
for word in chunk:
|
||||
word_occurred.setdefault(word.text, 0)
|
||||
word_occurred[word.text] += 1
|
||||
for word, freq in word_occurred.items():
|
||||
assert freq == 1, (word, [chunk.text for chunk in tokens.noun_chunks])
|
||||
assert freq == 1, (word, [chunk.text for chunk in doc.noun_chunks])
|
||||
|
|
|
@ -5,279 +5,309 @@ import pytest
|
|||
|
||||
|
||||
DEFAULT_TESTS = [
|
||||
('N. kormányzósági\nszékhely.', ['N.', 'kormányzósági', 'székhely', '.']),
|
||||
pytest.param('A .hu egy tld.', ['A', '.hu', 'egy', 'tld', '.'], marks=pytest.mark.xfail()),
|
||||
('Az egy.ketto pelda.', ['Az', 'egy.ketto', 'pelda', '.']),
|
||||
('A pl. rovidites.', ['A', 'pl.', 'rovidites', '.']),
|
||||
('A S.M.A.R.T. szo.', ['A', 'S.M.A.R.T.', 'szo', '.']),
|
||||
pytest.param('A .hu.', ['A', '.hu', '.'], marks=pytest.mark.xfail()),
|
||||
('Az egy.ketto.', ['Az', 'egy.ketto', '.']),
|
||||
('A pl.', ['A', 'pl.']),
|
||||
('A S.M.A.R.T.', ['A', 'S.M.A.R.T.']),
|
||||
('Egy..ket.', ['Egy', '..', 'ket', '.']),
|
||||
('Valami... van.', ['Valami', '...', 'van', '.']),
|
||||
('Valami ...van...', ['Valami', '...', 'van', '...']),
|
||||
('Valami...', ['Valami', '...']),
|
||||
('Valami ...', ['Valami', '...']),
|
||||
('Valami ... más.', ['Valami', '...', 'más', '.']),
|
||||
('Soha nem lesz!', ['Soha', 'nem', 'lesz', '!']),
|
||||
('Soha nem lesz?', ['Soha', 'nem', 'lesz', '?'])
|
||||
("N. kormányzósági\nszékhely.", ["N.", "kormányzósági", "székhely", "."]),
|
||||
pytest.param(
|
||||
"A .hu egy tld.", ["A", ".hu", "egy", "tld", "."], marks=pytest.mark.xfail()
|
||||
),
|
||||
("Az egy.ketto pelda.", ["Az", "egy.ketto", "pelda", "."]),
|
||||
("A pl. rovidites.", ["A", "pl.", "rovidites", "."]),
|
||||
("A S.M.A.R.T. szo.", ["A", "S.M.A.R.T.", "szo", "."]),
|
||||
pytest.param("A .hu.", ["A", ".hu", "."], marks=pytest.mark.xfail()),
|
||||
("Az egy.ketto.", ["Az", "egy.ketto", "."]),
|
||||
("A pl.", ["A", "pl."]),
|
||||
("A S.M.A.R.T.", ["A", "S.M.A.R.T."]),
|
||||
("Egy..ket.", ["Egy", "..", "ket", "."]),
|
||||
("Valami... van.", ["Valami", "...", "van", "."]),
|
||||
("Valami ...van...", ["Valami", "...", "van", "..."]),
|
||||
("Valami...", ["Valami", "..."]),
|
||||
("Valami ...", ["Valami", "..."]),
|
||||
("Valami ... más.", ["Valami", "...", "más", "."]),
|
||||
("Soha nem lesz!", ["Soha", "nem", "lesz", "!"]),
|
||||
("Soha nem lesz?", ["Soha", "nem", "lesz", "?"]),
|
||||
]
|
||||
|
||||
HYPHEN_TESTS = [
|
||||
('Egy -nak, -jaiért, -magyar, bel- van.', ['Egy', '-nak', ',', '-jaiért', ',', '-magyar', ',', 'bel-', 'van', '.']),
|
||||
('Szabolcs-Szatmár-Bereg megye', ['Szabolcs-Szatmár-Bereg', 'megye']),
|
||||
('Egy -nak.', ['Egy', '-nak', '.']),
|
||||
('Egy bel-.', ['Egy', 'bel-', '.']),
|
||||
('Dinnye-domb-.', ['Dinnye-domb-', '.']),
|
||||
('Ezen -e elcsatangolt.', ['Ezen', '-e', 'elcsatangolt', '.']),
|
||||
('Lakik-e', ['Lakik', '-e']),
|
||||
('A--B', ['A', '--', 'B']),
|
||||
('Lakik-e?', ['Lakik', '-e', '?']),
|
||||
('Lakik-e.', ['Lakik', '-e', '.']),
|
||||
('Lakik-e...', ['Lakik', '-e', '...']),
|
||||
('Lakik-e... van.', ['Lakik', '-e', '...', 'van', '.']),
|
||||
('Lakik-e van?', ['Lakik', '-e', 'van', '?']),
|
||||
('Lakik-elem van?', ['Lakik-elem', 'van', '?']),
|
||||
('Az életbiztosításáról- egy.', ['Az', 'életbiztosításáról-', 'egy', '.']),
|
||||
('Van lakik-elem.', ['Van', 'lakik-elem', '.']),
|
||||
('A 7-es busz?', ['A', '7-es', 'busz', '?']),
|
||||
('A 7-es?', ['A', '7-es', '?']),
|
||||
('A 7-es.', ['A', '7-es', '.']),
|
||||
('Ez (lakik)-e?', ['Ez', '(', 'lakik', ')', '-e', '?']),
|
||||
('A %-sal.', ['A', '%-sal', '.']),
|
||||
('A $-sal.', ['A', '$-sal', '.']),
|
||||
('A CD-ROM-okrol.', ['A', 'CD-ROM-okrol', '.'])
|
||||
(
|
||||
"Egy -nak, -jaiért, -magyar, bel- van.",
|
||||
["Egy", "-nak", ",", "-jaiért", ",", "-magyar", ",", "bel-", "van", "."],
|
||||
),
|
||||
("Szabolcs-Szatmár-Bereg megye", ["Szabolcs-Szatmár-Bereg", "megye"]),
|
||||
("Egy -nak.", ["Egy", "-nak", "."]),
|
||||
("Egy bel-.", ["Egy", "bel-", "."]),
|
||||
("Dinnye-domb-.", ["Dinnye-domb-", "."]),
|
||||
("Ezen -e elcsatangolt.", ["Ezen", "-e", "elcsatangolt", "."]),
|
||||
("Lakik-e", ["Lakik", "-e"]),
|
||||
("A--B", ["A", "--", "B"]),
|
||||
("Lakik-e?", ["Lakik", "-e", "?"]),
|
||||
("Lakik-e.", ["Lakik", "-e", "."]),
|
||||
("Lakik-e...", ["Lakik", "-e", "..."]),
|
||||
("Lakik-e... van.", ["Lakik", "-e", "...", "van", "."]),
|
||||
("Lakik-e van?", ["Lakik", "-e", "van", "?"]),
|
||||
("Lakik-elem van?", ["Lakik-elem", "van", "?"]),
|
||||
("Az életbiztosításáról- egy.", ["Az", "életbiztosításáról-", "egy", "."]),
|
||||
("Van lakik-elem.", ["Van", "lakik-elem", "."]),
|
||||
("A 7-es busz?", ["A", "7-es", "busz", "?"]),
|
||||
("A 7-es?", ["A", "7-es", "?"]),
|
||||
("A 7-es.", ["A", "7-es", "."]),
|
||||
("Ez (lakik)-e?", ["Ez", "(", "lakik", ")", "-e", "?"]),
|
||||
("A %-sal.", ["A", "%-sal", "."]),
|
||||
("A $-sal.", ["A", "$-sal", "."]),
|
||||
("A CD-ROM-okrol.", ["A", "CD-ROM-okrol", "."]),
|
||||
]
|
||||
|
||||
NUMBER_TESTS = [
|
||||
('A 2b van.', ['A', '2b', 'van', '.']),
|
||||
('A 2b-ben van.', ['A', '2b-ben', 'van', '.']),
|
||||
('A 2b.', ['A', '2b', '.']),
|
||||
('A 2b-ben.', ['A', '2b-ben', '.']),
|
||||
('A 3.b van.', ['A', '3.b', 'van', '.']),
|
||||
('A 3.b-ben van.', ['A', '3.b-ben', 'van', '.']),
|
||||
('A 3.b.', ['A', '3.b', '.']),
|
||||
('A 3.b-ben.', ['A', '3.b-ben', '.']),
|
||||
('A 1:20:36.7 van.', ['A', '1:20:36.7', 'van', '.']),
|
||||
('A 1:20:36.7-ben van.', ['A', '1:20:36.7-ben', 'van', '.']),
|
||||
('A 1:20:36.7-ben.', ['A', '1:20:36.7-ben', '.']),
|
||||
('A 1:35 van.', ['A', '1:35', 'van', '.']),
|
||||
('A 1:35-ben van.', ['A', '1:35-ben', 'van', '.']),
|
||||
('A 1:35-ben.', ['A', '1:35-ben', '.']),
|
||||
('A 1.35 van.', ['A', '1.35', 'van', '.']),
|
||||
('A 1.35-ben van.', ['A', '1.35-ben', 'van', '.']),
|
||||
('A 1.35-ben.', ['A', '1.35-ben', '.']),
|
||||
('A 4:01,95 van.', ['A', '4:01,95', 'van', '.']),
|
||||
('A 4:01,95-ben van.', ['A', '4:01,95-ben', 'van', '.']),
|
||||
('A 4:01,95-ben.', ['A', '4:01,95-ben', '.']),
|
||||
('A 10--12 van.', ['A', '10--12', 'van', '.']),
|
||||
('A 10--12-ben van.', ['A', '10--12-ben', 'van', '.']),
|
||||
('A 10--12-ben.', ['A', '10--12-ben', '.']),
|
||||
('A 10‐12 van.', ['A', '10‐12', 'van', '.']),
|
||||
('A 10‐12-ben van.', ['A', '10‐12-ben', 'van', '.']),
|
||||
('A 10‐12-ben.', ['A', '10‐12-ben', '.']),
|
||||
('A 10‑12 van.', ['A', '10‑12', 'van', '.']),
|
||||
('A 10‑12-ben van.', ['A', '10‑12-ben', 'van', '.']),
|
||||
('A 10‑12-ben.', ['A', '10‑12-ben', '.']),
|
||||
('A 10‒12 van.', ['A', '10‒12', 'van', '.']),
|
||||
('A 10‒12-ben van.', ['A', '10‒12-ben', 'van', '.']),
|
||||
('A 10‒12-ben.', ['A', '10‒12-ben', '.']),
|
||||
('A 10–12 van.', ['A', '10–12', 'van', '.']),
|
||||
('A 10–12-ben van.', ['A', '10–12-ben', 'van', '.']),
|
||||
('A 10–12-ben.', ['A', '10–12-ben', '.']),
|
||||
('A 10—12 van.', ['A', '10—12', 'van', '.']),
|
||||
('A 10—12-ben van.', ['A', '10—12-ben', 'van', '.']),
|
||||
('A 10—12-ben.', ['A', '10—12-ben', '.']),
|
||||
('A 10―12 van.', ['A', '10―12', 'van', '.']),
|
||||
('A 10―12-ben van.', ['A', '10―12-ben', 'van', '.']),
|
||||
('A 10―12-ben.', ['A', '10―12-ben', '.']),
|
||||
('A -23,12 van.', ['A', '-23,12', 'van', '.']),
|
||||
('A -23,12-ben van.', ['A', '-23,12-ben', 'van', '.']),
|
||||
('A -23,12-ben.', ['A', '-23,12-ben', '.']),
|
||||
('A 2+3 van.', ['A', '2+3', 'van', '.']),
|
||||
('A 2<3 van.', ['A', '2<3', 'van', '.']),
|
||||
('A 2=3 van.', ['A', '2=3', 'van', '.']),
|
||||
('A 2÷3 van.', ['A', '2÷3', 'van', '.']),
|
||||
('A 1=(2÷3)-2/5 van.', ['A', '1=(2÷3)-2/5', 'van', '.']),
|
||||
('A 2 +3 van.', ['A', '2', '+3', 'van', '.']),
|
||||
('A 2+ 3 van.', ['A', '2', '+', '3', 'van', '.']),
|
||||
('A 2 + 3 van.', ['A', '2', '+', '3', 'van', '.']),
|
||||
('A 2*3 van.', ['A', '2*3', 'van', '.']),
|
||||
('A 2 *3 van.', ['A', '2', '*', '3', 'van', '.']),
|
||||
('A 2* 3 van.', ['A', '2', '*', '3', 'van', '.']),
|
||||
('A 2 * 3 van.', ['A', '2', '*', '3', 'van', '.']),
|
||||
('A C++ van.', ['A', 'C++', 'van', '.']),
|
||||
('A C++-ben van.', ['A', 'C++-ben', 'van', '.']),
|
||||
('A C++.', ['A', 'C++', '.']),
|
||||
('A C++-ben.', ['A', 'C++-ben', '.']),
|
||||
('A 2003. I. 06. van.', ['A', '2003.', 'I.', '06.', 'van', '.']),
|
||||
('A 2003. I. 06-ben van.', ['A', '2003.', 'I.', '06-ben', 'van', '.']),
|
||||
('A 2003. I. 06.', ['A', '2003.', 'I.', '06.']),
|
||||
('A 2003. I. 06-ben.', ['A', '2003.', 'I.', '06-ben', '.']),
|
||||
('A 2003. 01. 06. van.', ['A', '2003.', '01.', '06.', 'van', '.']),
|
||||
('A 2003. 01. 06-ben van.', ['A', '2003.', '01.', '06-ben', 'van', '.']),
|
||||
('A 2003. 01. 06.', ['A', '2003.', '01.', '06.']),
|
||||
('A 2003. 01. 06-ben.', ['A', '2003.', '01.', '06-ben', '.']),
|
||||
('A IV. 12. van.', ['A', 'IV.', '12.', 'van', '.']),
|
||||
('A IV. 12-ben van.', ['A', 'IV.', '12-ben', 'van', '.']),
|
||||
('A IV. 12.', ['A', 'IV.', '12.']),
|
||||
('A IV. 12-ben.', ['A', 'IV.', '12-ben', '.']),
|
||||
('A 2003.01.06. van.', ['A', '2003.01.06.', 'van', '.']),
|
||||
('A 2003.01.06-ben van.', ['A', '2003.01.06-ben', 'van', '.']),
|
||||
('A 2003.01.06.', ['A', '2003.01.06.']),
|
||||
('A 2003.01.06-ben.', ['A', '2003.01.06-ben', '.']),
|
||||
('A IV.12. van.', ['A', 'IV.12.', 'van', '.']),
|
||||
('A IV.12-ben van.', ['A', 'IV.12-ben', 'van', '.']),
|
||||
('A IV.12.', ['A', 'IV.12.']),
|
||||
('A IV.12-ben.', ['A', 'IV.12-ben', '.']),
|
||||
('A 1.1.2. van.', ['A', '1.1.2.', 'van', '.']),
|
||||
('A 1.1.2-ben van.', ['A', '1.1.2-ben', 'van', '.']),
|
||||
('A 1.1.2.', ['A', '1.1.2.']),
|
||||
('A 1.1.2-ben.', ['A', '1.1.2-ben', '.']),
|
||||
('A 1,5--2,5 van.', ['A', '1,5--2,5', 'van', '.']),
|
||||
('A 1,5--2,5-ben van.', ['A', '1,5--2,5-ben', 'van', '.']),
|
||||
('A 1,5--2,5-ben.', ['A', '1,5--2,5-ben', '.']),
|
||||
('A 3,14 van.', ['A', '3,14', 'van', '.']),
|
||||
('A 3,14-ben van.', ['A', '3,14-ben', 'van', '.']),
|
||||
('A 3,14-ben.', ['A', '3,14-ben', '.']),
|
||||
('A 3.14 van.', ['A', '3.14', 'van', '.']),
|
||||
('A 3.14-ben van.', ['A', '3.14-ben', 'van', '.']),
|
||||
('A 3.14-ben.', ['A', '3.14-ben', '.']),
|
||||
('A 15. van.', ['A', '15.', 'van', '.']),
|
||||
('A 15-ben van.', ['A', '15-ben', 'van', '.']),
|
||||
('A 15-ben.', ['A', '15-ben', '.']),
|
||||
('A 15.-ben van.', ['A', '15.-ben', 'van', '.']),
|
||||
('A 15.-ben.', ['A', '15.-ben', '.']),
|
||||
('A 2002--2003. van.', ['A', '2002--2003.', 'van', '.']),
|
||||
('A 2002--2003-ben van.', ['A', '2002--2003-ben', 'van', '.']),
|
||||
('A 2002-2003-ben.', ['A', '2002-2003-ben', '.']),
|
||||
('A +0,99% van.', ['A', '+0,99%', 'van', '.']),
|
||||
('A -0,99% van.', ['A', '-0,99%', 'van', '.']),
|
||||
('A -0,99%-ben van.', ['A', '-0,99%-ben', 'van', '.']),
|
||||
('A -0,99%.', ['A', '-0,99%', '.']),
|
||||
('A -0,99%-ben.', ['A', '-0,99%-ben', '.']),
|
||||
('A 10--20% van.', ['A', '10--20%', 'van', '.']),
|
||||
('A 10--20%-ben van.', ['A', '10--20%-ben', 'van', '.']),
|
||||
('A 10--20%.', ['A', '10--20%', '.']),
|
||||
('A 10--20%-ben.', ['A', '10--20%-ben', '.']),
|
||||
('A 99§ van.', ['A', '99§', 'van', '.']),
|
||||
('A 99§-ben van.', ['A', '99§-ben', 'van', '.']),
|
||||
('A 99§-ben.', ['A', '99§-ben', '.']),
|
||||
('A 10--20§ van.', ['A', '10--20§', 'van', '.']),
|
||||
('A 10--20§-ben van.', ['A', '10--20§-ben', 'van', '.']),
|
||||
('A 10--20§-ben.', ['A', '10--20§-ben', '.']),
|
||||
('A 99° van.', ['A', '99°', 'van', '.']),
|
||||
('A 99°-ben van.', ['A', '99°-ben', 'van', '.']),
|
||||
('A 99°-ben.', ['A', '99°-ben', '.']),
|
||||
('A 10--20° van.', ['A', '10--20°', 'van', '.']),
|
||||
('A 10--20°-ben van.', ['A', '10--20°-ben', 'van', '.']),
|
||||
('A 10--20°-ben.', ['A', '10--20°-ben', '.']),
|
||||
('A °C van.', ['A', '°C', 'van', '.']),
|
||||
('A °C-ben van.', ['A', '°C-ben', 'van', '.']),
|
||||
('A °C.', ['A', '°C', '.']),
|
||||
('A °C-ben.', ['A', '°C-ben', '.']),
|
||||
('A 100°C van.', ['A', '100°C', 'van', '.']),
|
||||
('A 100°C-ben van.', ['A', '100°C-ben', 'van', '.']),
|
||||
('A 100°C.', ['A', '100°C', '.']),
|
||||
('A 100°C-ben.', ['A', '100°C-ben', '.']),
|
||||
('A 800x600 van.', ['A', '800x600', 'van', '.']),
|
||||
('A 800x600-ben van.', ['A', '800x600-ben', 'van', '.']),
|
||||
('A 800x600-ben.', ['A', '800x600-ben', '.']),
|
||||
('A 1x2x3x4 van.', ['A', '1x2x3x4', 'van', '.']),
|
||||
('A 1x2x3x4-ben van.', ['A', '1x2x3x4-ben', 'van', '.']),
|
||||
('A 1x2x3x4-ben.', ['A', '1x2x3x4-ben', '.']),
|
||||
('A 5/J van.', ['A', '5/J', 'van', '.']),
|
||||
('A 5/J-ben van.', ['A', '5/J-ben', 'van', '.']),
|
||||
('A 5/J-ben.', ['A', '5/J-ben', '.']),
|
||||
('A 5/J. van.', ['A', '5/J.', 'van', '.']),
|
||||
('A 5/J.-ben van.', ['A', '5/J.-ben', 'van', '.']),
|
||||
('A 5/J.-ben.', ['A', '5/J.-ben', '.']),
|
||||
('A III/1 van.', ['A', 'III/1', 'van', '.']),
|
||||
('A III/1-ben van.', ['A', 'III/1-ben', 'van', '.']),
|
||||
('A III/1-ben.', ['A', 'III/1-ben', '.']),
|
||||
('A III/1. van.', ['A', 'III/1.', 'van', '.']),
|
||||
('A III/1.-ben van.', ['A', 'III/1.-ben', 'van', '.']),
|
||||
('A III/1.-ben.', ['A', 'III/1.-ben', '.']),
|
||||
('A III/c van.', ['A', 'III/c', 'van', '.']),
|
||||
('A III/c-ben van.', ['A', 'III/c-ben', 'van', '.']),
|
||||
('A III/c.', ['A', 'III/c', '.']),
|
||||
('A III/c-ben.', ['A', 'III/c-ben', '.']),
|
||||
('A TU–154 van.', ['A', 'TU–154', 'van', '.']),
|
||||
('A TU–154-ben van.', ['A', 'TU–154-ben', 'van', '.']),
|
||||
('A TU–154-ben.', ['A', 'TU–154-ben', '.']),
|
||||
('A 5cm³', ['A', '5', 'cm³']),
|
||||
('A 5 $-ban', ['A', '5', '$-ban']),
|
||||
('A 5$-ban', ['A', '5$-ban']),
|
||||
('A 5$.', ['A', '5', '$', '.']),
|
||||
('A 5$', ['A', '5', '$']),
|
||||
('A $5', ['A', '$5']),
|
||||
('A 5km/h', ['A', '5', 'km/h']),
|
||||
('A 75%+1-100%-ig', ['A', '75%+1-100%-ig']),
|
||||
('A 5km/h.', ['A', '5', 'km/h', '.']),
|
||||
('3434/1992. évi elszámolás', ['3434/1992.', 'évi', 'elszámolás']),
|
||||
("A 2b van.", ["A", "2b", "van", "."]),
|
||||
("A 2b-ben van.", ["A", "2b-ben", "van", "."]),
|
||||
("A 2b.", ["A", "2b", "."]),
|
||||
("A 2b-ben.", ["A", "2b-ben", "."]),
|
||||
("A 3.b van.", ["A", "3.b", "van", "."]),
|
||||
("A 3.b-ben van.", ["A", "3.b-ben", "van", "."]),
|
||||
("A 3.b.", ["A", "3.b", "."]),
|
||||
("A 3.b-ben.", ["A", "3.b-ben", "."]),
|
||||
("A 1:20:36.7 van.", ["A", "1:20:36.7", "van", "."]),
|
||||
("A 1:20:36.7-ben van.", ["A", "1:20:36.7-ben", "van", "."]),
|
||||
("A 1:20:36.7-ben.", ["A", "1:20:36.7-ben", "."]),
|
||||
("A 1:35 van.", ["A", "1:35", "van", "."]),
|
||||
("A 1:35-ben van.", ["A", "1:35-ben", "van", "."]),
|
||||
("A 1:35-ben.", ["A", "1:35-ben", "."]),
|
||||
("A 1.35 van.", ["A", "1.35", "van", "."]),
|
||||
("A 1.35-ben van.", ["A", "1.35-ben", "van", "."]),
|
||||
("A 1.35-ben.", ["A", "1.35-ben", "."]),
|
||||
("A 4:01,95 van.", ["A", "4:01,95", "van", "."]),
|
||||
("A 4:01,95-ben van.", ["A", "4:01,95-ben", "van", "."]),
|
||||
("A 4:01,95-ben.", ["A", "4:01,95-ben", "."]),
|
||||
("A 10--12 van.", ["A", "10--12", "van", "."]),
|
||||
("A 10--12-ben van.", ["A", "10--12-ben", "van", "."]),
|
||||
("A 10--12-ben.", ["A", "10--12-ben", "."]),
|
||||
("A 10‐12 van.", ["A", "10‐12", "van", "."]),
|
||||
("A 10‐12-ben van.", ["A", "10‐12-ben", "van", "."]),
|
||||
("A 10‐12-ben.", ["A", "10‐12-ben", "."]),
|
||||
("A 10‑12 van.", ["A", "10‑12", "van", "."]),
|
||||
("A 10‑12-ben van.", ["A", "10‑12-ben", "van", "."]),
|
||||
("A 10‑12-ben.", ["A", "10‑12-ben", "."]),
|
||||
("A 10‒12 van.", ["A", "10‒12", "van", "."]),
|
||||
("A 10‒12-ben van.", ["A", "10‒12-ben", "van", "."]),
|
||||
("A 10‒12-ben.", ["A", "10‒12-ben", "."]),
|
||||
("A 10–12 van.", ["A", "10–12", "van", "."]),
|
||||
("A 10–12-ben van.", ["A", "10–12-ben", "van", "."]),
|
||||
("A 10–12-ben.", ["A", "10–12-ben", "."]),
|
||||
("A 10—12 van.", ["A", "10—12", "van", "."]),
|
||||
("A 10—12-ben van.", ["A", "10—12-ben", "van", "."]),
|
||||
("A 10—12-ben.", ["A", "10—12-ben", "."]),
|
||||
("A 10―12 van.", ["A", "10―12", "van", "."]),
|
||||
("A 10―12-ben van.", ["A", "10―12-ben", "van", "."]),
|
||||
("A 10―12-ben.", ["A", "10―12-ben", "."]),
|
||||
("A -23,12 van.", ["A", "-23,12", "van", "."]),
|
||||
("A -23,12-ben van.", ["A", "-23,12-ben", "van", "."]),
|
||||
("A -23,12-ben.", ["A", "-23,12-ben", "."]),
|
||||
("A 2+3 van.", ["A", "2+3", "van", "."]),
|
||||
("A 2<3 van.", ["A", "2<3", "van", "."]),
|
||||
("A 2=3 van.", ["A", "2=3", "van", "."]),
|
||||
("A 2÷3 van.", ["A", "2÷3", "van", "."]),
|
||||
("A 1=(2÷3)-2/5 van.", ["A", "1=(2÷3)-2/5", "van", "."]),
|
||||
("A 2 +3 van.", ["A", "2", "+3", "van", "."]),
|
||||
("A 2+ 3 van.", ["A", "2", "+", "3", "van", "."]),
|
||||
("A 2 + 3 van.", ["A", "2", "+", "3", "van", "."]),
|
||||
("A 2*3 van.", ["A", "2*3", "van", "."]),
|
||||
("A 2 *3 van.", ["A", "2", "*", "3", "van", "."]),
|
||||
("A 2* 3 van.", ["A", "2", "*", "3", "van", "."]),
|
||||
("A 2 * 3 van.", ["A", "2", "*", "3", "van", "."]),
|
||||
("A C++ van.", ["A", "C++", "van", "."]),
|
||||
("A C++-ben van.", ["A", "C++-ben", "van", "."]),
|
||||
("A C++.", ["A", "C++", "."]),
|
||||
("A C++-ben.", ["A", "C++-ben", "."]),
|
||||
("A 2003. I. 06. van.", ["A", "2003.", "I.", "06.", "van", "."]),
|
||||
("A 2003. I. 06-ben van.", ["A", "2003.", "I.", "06-ben", "van", "."]),
|
||||
("A 2003. I. 06.", ["A", "2003.", "I.", "06."]),
|
||||
("A 2003. I. 06-ben.", ["A", "2003.", "I.", "06-ben", "."]),
|
||||
("A 2003. 01. 06. van.", ["A", "2003.", "01.", "06.", "van", "."]),
|
||||
("A 2003. 01. 06-ben van.", ["A", "2003.", "01.", "06-ben", "van", "."]),
|
||||
("A 2003. 01. 06.", ["A", "2003.", "01.", "06."]),
|
||||
("A 2003. 01. 06-ben.", ["A", "2003.", "01.", "06-ben", "."]),
|
||||
("A IV. 12. van.", ["A", "IV.", "12.", "van", "."]),
|
||||
("A IV. 12-ben van.", ["A", "IV.", "12-ben", "van", "."]),
|
||||
("A IV. 12.", ["A", "IV.", "12."]),
|
||||
("A IV. 12-ben.", ["A", "IV.", "12-ben", "."]),
|
||||
("A 2003.01.06. van.", ["A", "2003.01.06.", "van", "."]),
|
||||
("A 2003.01.06-ben van.", ["A", "2003.01.06-ben", "van", "."]),
|
||||
("A 2003.01.06.", ["A", "2003.01.06."]),
|
||||
("A 2003.01.06-ben.", ["A", "2003.01.06-ben", "."]),
|
||||
("A IV.12. van.", ["A", "IV.12.", "van", "."]),
|
||||
("A IV.12-ben van.", ["A", "IV.12-ben", "van", "."]),
|
||||
("A IV.12.", ["A", "IV.12."]),
|
||||
("A IV.12-ben.", ["A", "IV.12-ben", "."]),
|
||||
("A 1.1.2. van.", ["A", "1.1.2.", "van", "."]),
|
||||
("A 1.1.2-ben van.", ["A", "1.1.2-ben", "van", "."]),
|
||||
("A 1.1.2.", ["A", "1.1.2."]),
|
||||
("A 1.1.2-ben.", ["A", "1.1.2-ben", "."]),
|
||||
("A 1,5--2,5 van.", ["A", "1,5--2,5", "van", "."]),
|
||||
("A 1,5--2,5-ben van.", ["A", "1,5--2,5-ben", "van", "."]),
|
||||
("A 1,5--2,5-ben.", ["A", "1,5--2,5-ben", "."]),
|
||||
("A 3,14 van.", ["A", "3,14", "van", "."]),
|
||||
("A 3,14-ben van.", ["A", "3,14-ben", "van", "."]),
|
||||
("A 3,14-ben.", ["A", "3,14-ben", "."]),
|
||||
("A 3.14 van.", ["A", "3.14", "van", "."]),
|
||||
("A 3.14-ben van.", ["A", "3.14-ben", "van", "."]),
|
||||
("A 3.14-ben.", ["A", "3.14-ben", "."]),
|
||||
("A 15. van.", ["A", "15.", "van", "."]),
|
||||
("A 15-ben van.", ["A", "15-ben", "van", "."]),
|
||||
("A 15-ben.", ["A", "15-ben", "."]),
|
||||
("A 15.-ben van.", ["A", "15.-ben", "van", "."]),
|
||||
("A 15.-ben.", ["A", "15.-ben", "."]),
|
||||
("A 2002--2003. van.", ["A", "2002--2003.", "van", "."]),
|
||||
("A 2002--2003-ben van.", ["A", "2002--2003-ben", "van", "."]),
|
||||
("A 2002-2003-ben.", ["A", "2002-2003-ben", "."]),
|
||||
("A +0,99% van.", ["A", "+0,99%", "van", "."]),
|
||||
("A -0,99% van.", ["A", "-0,99%", "van", "."]),
|
||||
("A -0,99%-ben van.", ["A", "-0,99%-ben", "van", "."]),
|
||||
("A -0,99%.", ["A", "-0,99%", "."]),
|
||||
("A -0,99%-ben.", ["A", "-0,99%-ben", "."]),
|
||||
("A 10--20% van.", ["A", "10--20%", "van", "."]),
|
||||
("A 10--20%-ben van.", ["A", "10--20%-ben", "van", "."]),
|
||||
("A 10--20%.", ["A", "10--20%", "."]),
|
||||
("A 10--20%-ben.", ["A", "10--20%-ben", "."]),
|
||||
("A 99§ van.", ["A", "99§", "van", "."]),
|
||||
("A 99§-ben van.", ["A", "99§-ben", "van", "."]),
|
||||
("A 99§-ben.", ["A", "99§-ben", "."]),
|
||||
("A 10--20§ van.", ["A", "10--20§", "van", "."]),
|
||||
("A 10--20§-ben van.", ["A", "10--20§-ben", "van", "."]),
|
||||
("A 10--20§-ben.", ["A", "10--20§-ben", "."]),
|
||||
("A 99° van.", ["A", "99°", "van", "."]),
|
||||
("A 99°-ben van.", ["A", "99°-ben", "van", "."]),
|
||||
("A 99°-ben.", ["A", "99°-ben", "."]),
|
||||
("A 10--20° van.", ["A", "10--20°", "van", "."]),
|
||||
("A 10--20°-ben van.", ["A", "10--20°-ben", "van", "."]),
|
||||
("A 10--20°-ben.", ["A", "10--20°-ben", "."]),
|
||||
("A °C van.", ["A", "°C", "van", "."]),
|
||||
("A °C-ben van.", ["A", "°C-ben", "van", "."]),
|
||||
("A °C.", ["A", "°C", "."]),
|
||||
("A °C-ben.", ["A", "°C-ben", "."]),
|
||||
("A 100°C van.", ["A", "100°C", "van", "."]),
|
||||
("A 100°C-ben van.", ["A", "100°C-ben", "van", "."]),
|
||||
("A 100°C.", ["A", "100°C", "."]),
|
||||
("A 100°C-ben.", ["A", "100°C-ben", "."]),
|
||||
("A 800x600 van.", ["A", "800x600", "van", "."]),
|
||||
("A 800x600-ben van.", ["A", "800x600-ben", "van", "."]),
|
||||
("A 800x600-ben.", ["A", "800x600-ben", "."]),
|
||||
("A 1x2x3x4 van.", ["A", "1x2x3x4", "van", "."]),
|
||||
("A 1x2x3x4-ben van.", ["A", "1x2x3x4-ben", "van", "."]),
|
||||
("A 1x2x3x4-ben.", ["A", "1x2x3x4-ben", "."]),
|
||||
("A 5/J van.", ["A", "5/J", "van", "."]),
|
||||
("A 5/J-ben van.", ["A", "5/J-ben", "van", "."]),
|
||||
("A 5/J-ben.", ["A", "5/J-ben", "."]),
|
||||
("A 5/J. van.", ["A", "5/J.", "van", "."]),
|
||||
("A 5/J.-ben van.", ["A", "5/J.-ben", "van", "."]),
|
||||
("A 5/J.-ben.", ["A", "5/J.-ben", "."]),
|
||||
("A III/1 van.", ["A", "III/1", "van", "."]),
|
||||
("A III/1-ben van.", ["A", "III/1-ben", "van", "."]),
|
||||
("A III/1-ben.", ["A", "III/1-ben", "."]),
|
||||
("A III/1. van.", ["A", "III/1.", "van", "."]),
|
||||
("A III/1.-ben van.", ["A", "III/1.-ben", "van", "."]),
|
||||
("A III/1.-ben.", ["A", "III/1.-ben", "."]),
|
||||
("A III/c van.", ["A", "III/c", "van", "."]),
|
||||
("A III/c-ben van.", ["A", "III/c-ben", "van", "."]),
|
||||
("A III/c.", ["A", "III/c", "."]),
|
||||
("A III/c-ben.", ["A", "III/c-ben", "."]),
|
||||
("A TU–154 van.", ["A", "TU–154", "van", "."]),
|
||||
("A TU–154-ben van.", ["A", "TU–154-ben", "van", "."]),
|
||||
("A TU–154-ben.", ["A", "TU–154-ben", "."]),
|
||||
("A 5cm³", ["A", "5", "cm³"]),
|
||||
("A 5 $-ban", ["A", "5", "$-ban"]),
|
||||
("A 5$-ban", ["A", "5$-ban"]),
|
||||
("A 5$.", ["A", "5", "$", "."]),
|
||||
("A 5$", ["A", "5", "$"]),
|
||||
("A $5", ["A", "$5"]),
|
||||
("A 5km/h", ["A", "5", "km/h"]),
|
||||
("A 75%+1-100%-ig", ["A", "75%+1-100%-ig"]),
|
||||
("A 5km/h.", ["A", "5", "km/h", "."]),
|
||||
("3434/1992. évi elszámolás", ["3434/1992.", "évi", "elszámolás"]),
|
||||
]
|
||||
|
||||
QUOTE_TESTS = [
|
||||
('Az "Ime, hat"-ban irja.', ['Az', '"', 'Ime', ',', 'hat', '"', '-ban', 'irja', '.']),
|
||||
('"Ime, hat"-ban irja.', ['"', 'Ime', ',', 'hat', '"', '-ban', 'irja', '.']),
|
||||
('Az "Ime, hat".', ['Az', '"', 'Ime', ',', 'hat', '"', '.']),
|
||||
('Egy 24"-os monitor.', ['Egy', '24"-os', 'monitor', '.']),
|
||||
("A McDonald's van.", ['A', "McDonald's", 'van', '.'])
|
||||
(
|
||||
'Az "Ime, hat"-ban irja.',
|
||||
["Az", '"', "Ime", ",", "hat", '"', "-ban", "irja", "."],
|
||||
),
|
||||
('"Ime, hat"-ban irja.', ['"', "Ime", ",", "hat", '"', "-ban", "irja", "."]),
|
||||
('Az "Ime, hat".', ["Az", '"', "Ime", ",", "hat", '"', "."]),
|
||||
('Egy 24"-os monitor.', ["Egy", '24"-os', "monitor", "."]),
|
||||
("A McDonald's van.", ["A", "McDonald's", "van", "."]),
|
||||
]
|
||||
|
||||
DOT_TESTS = [
|
||||
('N. kormányzósági\nszékhely.', ['N.', 'kormányzósági', 'székhely', '.']),
|
||||
pytest.param('A .hu egy tld.', ['A', '.hu', 'egy', 'tld', '.'], marks=pytest.mark.xfail()),
|
||||
('Az egy.ketto pelda.', ['Az', 'egy.ketto', 'pelda', '.']),
|
||||
('A pl. rövidítés.', ['A', 'pl.', 'rövidítés', '.']),
|
||||
('A S.M.A.R.T. szó.', ['A', 'S.M.A.R.T.', 'szó', '.']),
|
||||
pytest.param('A .hu.', ['A', '.hu', '.'], marks=pytest.mark.xfail()),
|
||||
('Az egy.ketto.', ['Az', 'egy.ketto', '.']),
|
||||
('A pl.', ['A', 'pl.']),
|
||||
('A S.M.A.R.T.', ['A', 'S.M.A.R.T.']),
|
||||
('Egy..ket.', ['Egy', '..', 'ket', '.']),
|
||||
('Valami... van.', ['Valami', '...', 'van', '.']),
|
||||
('Valami ...van...', ['Valami', '...', 'van', '...']),
|
||||
('Valami...', ['Valami', '...']),
|
||||
('Valami ...', ['Valami', '...']),
|
||||
('Valami ... más.', ['Valami', '...', 'más', '.'])
|
||||
("N. kormányzósági\nszékhely.", ["N.", "kormányzósági", "székhely", "."]),
|
||||
pytest.param(
|
||||
"A .hu egy tld.", ["A", ".hu", "egy", "tld", "."], marks=pytest.mark.xfail()
|
||||
),
|
||||
("Az egy.ketto pelda.", ["Az", "egy.ketto", "pelda", "."]),
|
||||
("A pl. rövidítés.", ["A", "pl.", "rövidítés", "."]),
|
||||
("A S.M.A.R.T. szó.", ["A", "S.M.A.R.T.", "szó", "."]),
|
||||
pytest.param("A .hu.", ["A", ".hu", "."], marks=pytest.mark.xfail()),
|
||||
("Az egy.ketto.", ["Az", "egy.ketto", "."]),
|
||||
("A pl.", ["A", "pl."]),
|
||||
("A S.M.A.R.T.", ["A", "S.M.A.R.T."]),
|
||||
("Egy..ket.", ["Egy", "..", "ket", "."]),
|
||||
("Valami... van.", ["Valami", "...", "van", "."]),
|
||||
("Valami ...van...", ["Valami", "...", "van", "..."]),
|
||||
("Valami...", ["Valami", "..."]),
|
||||
("Valami ...", ["Valami", "..."]),
|
||||
("Valami ... más.", ["Valami", "...", "más", "."]),
|
||||
]
|
||||
|
||||
TYPO_TESTS = [
|
||||
(
|
||||
'Ez egy mondat vége.Ez egy másik eleje.', ['Ez', 'egy', 'mondat', 'vége', '.', 'Ez', 'egy', 'másik', 'eleje', '.']),
|
||||
('Ez egy mondat vége .Ez egy másik eleje.',
|
||||
['Ez', 'egy', 'mondat', 'vége', '.', 'Ez', 'egy', 'másik', 'eleje', '.']),
|
||||
"Ez egy mondat vége.Ez egy másik eleje.",
|
||||
["Ez", "egy", "mondat", "vége", ".", "Ez", "egy", "másik", "eleje", "."],
|
||||
),
|
||||
(
|
||||
'Ez egy mondat vége!ez egy másik eleje.', ['Ez', 'egy', 'mondat', 'vége', '!', 'ez', 'egy', 'másik', 'eleje', '.']),
|
||||
('Ez egy mondat vége !ez egy másik eleje.',
|
||||
['Ez', 'egy', 'mondat', 'vége', '!', 'ez', 'egy', 'másik', 'eleje', '.']),
|
||||
"Ez egy mondat vége .Ez egy másik eleje.",
|
||||
["Ez", "egy", "mondat", "vége", ".", "Ez", "egy", "másik", "eleje", "."],
|
||||
),
|
||||
(
|
||||
'Ez egy mondat vége?Ez egy másik eleje.', ['Ez', 'egy', 'mondat', 'vége', '?', 'Ez', 'egy', 'másik', 'eleje', '.']),
|
||||
('Ez egy mondat vége ?Ez egy másik eleje.',
|
||||
['Ez', 'egy', 'mondat', 'vége', '?', 'Ez', 'egy', 'másik', 'eleje', '.']),
|
||||
('egy,kettő', ['egy', ',', 'kettő']),
|
||||
('egy ,kettő', ['egy', ',', 'kettő']),
|
||||
('egy :kettő', ['egy', ':', 'kettő']),
|
||||
"Ez egy mondat vége!ez egy másik eleje.",
|
||||
["Ez", "egy", "mondat", "vége", "!", "ez", "egy", "másik", "eleje", "."],
|
||||
),
|
||||
(
|
||||
"Ez egy mondat vége !ez egy másik eleje.",
|
||||
["Ez", "egy", "mondat", "vége", "!", "ez", "egy", "másik", "eleje", "."],
|
||||
),
|
||||
(
|
||||
"Ez egy mondat vége?Ez egy másik eleje.",
|
||||
["Ez", "egy", "mondat", "vége", "?", "Ez", "egy", "másik", "eleje", "."],
|
||||
),
|
||||
(
|
||||
"Ez egy mondat vége ?Ez egy másik eleje.",
|
||||
["Ez", "egy", "mondat", "vége", "?", "Ez", "egy", "másik", "eleje", "."],
|
||||
),
|
||||
("egy,kettő", ["egy", ",", "kettő"]),
|
||||
("egy ,kettő", ["egy", ",", "kettő"]),
|
||||
("egy :kettő", ["egy", ":", "kettő"]),
|
||||
]
|
||||
|
||||
WIKI_TESTS = [
|
||||
('!"', ['!', '"']),
|
||||
('lány"a', ['lány', '"', 'a']),
|
||||
('lány"a', ['lány', '"', 'a']),
|
||||
('!"-lel', ['!', '"', '-lel']),
|
||||
('""-sorozat ', ['"', '"', '-sorozat']),
|
||||
('"(Köszönöm', ['"', '(', 'Köszönöm']),
|
||||
('(törvénykönyv)-ben ', ['(', 'törvénykönyv', ')', '-ben']),
|
||||
('"(...)"–sokkal ', ['"', '(', '...', ')', '"', '–sokkal']),
|
||||
('cérium(IV)-oxid', ['cérium', '(', 'IV', ')', '-oxid'])
|
||||
('!"', ["!", '"']),
|
||||
('lány"a', ["lány", '"', "a"]),
|
||||
('lány"a', ["lány", '"', "a"]),
|
||||
('!"-lel', ["!", '"', "-lel"]),
|
||||
('""-sorozat ', ['"', '"', "-sorozat"]),
|
||||
('"(Köszönöm', ['"', "(", "Köszönöm"]),
|
||||
("(törvénykönyv)-ben ", ["(", "törvénykönyv", ")", "-ben"]),
|
||||
('"(...)"–sokkal ', ['"', "(", "...", ")", '"', "–sokkal"]),
|
||||
("cérium(IV)-oxid", ["cérium", "(", "IV", ")", "-oxid"]),
|
||||
]
|
||||
|
||||
TESTCASES = DEFAULT_TESTS + DOT_TESTS + QUOTE_TESTS + NUMBER_TESTS + HYPHEN_TESTS + WIKI_TESTS + TYPO_TESTS
|
||||
TESTCASES = (
|
||||
DEFAULT_TESTS
|
||||
+ DOT_TESTS
|
||||
+ QUOTE_TESTS
|
||||
+ NUMBER_TESTS
|
||||
+ HYPHEN_TESTS
|
||||
+ WIKI_TESTS
|
||||
+ TYPO_TESTS
|
||||
)
|
||||
|
||||
|
||||
@pytest.mark.parametrize('text,expected_tokens', TESTCASES)
|
||||
@pytest.mark.parametrize("text,expected_tokens", TESTCASES)
|
||||
def test_hu_tokenizer_handles_testcases(hu_tokenizer, text, expected_tokens):
|
||||
tokens = hu_tokenizer(text)
|
||||
token_list = [token.text for token in tokens if not token.is_space]
|
||||
|
|
|
@ -9,7 +9,7 @@ from ...util import get_doc
|
|||
|
||||
@pytest.fixture
|
||||
def ru_lemmatizer():
|
||||
pymorphy = pytest.importorskip("pymorphy2")
|
||||
pytest.importorskip("pymorphy2")
|
||||
return Russian.Defaults.create_lemmatizer()
|
||||
|
||||
|
||||
|
|
|
@ -51,7 +51,7 @@ def test_matcher_from_usage_docs(en_vocab):
|
|||
|
||||
matcher = Matcher(en_vocab)
|
||||
matcher.add("HAPPY", label_sentiment, *pos_patterns)
|
||||
matches = matcher(doc)
|
||||
matcher(doc)
|
||||
assert doc.sentiment != 0
|
||||
assert doc[1].norm_ == "happy emoji"
|
||||
|
||||
|
|
|
@ -145,4 +145,4 @@ def test_get_oracle_actions():
|
|||
heads, deps = projectivize(heads, deps)
|
||||
gold = GoldParse(doc, words=words, tags=tags, heads=heads, deps=deps)
|
||||
parser.moves.preprocess_gold(gold)
|
||||
actions = parser.moves.get_oracle_sequence(doc, gold)
|
||||
parser.moves.get_oracle_sequence(doc, gold)
|
||||
|
|
|
@ -57,6 +57,7 @@ def test_get_oracle_moves_negative_entities(tsys, doc, entity_annots):
|
|||
tsys.preprocess_gold(gold)
|
||||
act_classes = tsys.get_oracle_sequence(doc, gold)
|
||||
names = [tsys.get_class_name(act) for act in act_classes]
|
||||
assert names
|
||||
|
||||
|
||||
def test_get_oracle_moves_negative_entities2(tsys, vocab):
|
||||
|
@ -66,6 +67,7 @@ def test_get_oracle_moves_negative_entities2(tsys, vocab):
|
|||
tsys.preprocess_gold(gold)
|
||||
act_classes = tsys.get_oracle_sequence(doc, gold)
|
||||
names = [tsys.get_class_name(act) for act in act_classes]
|
||||
assert names
|
||||
|
||||
|
||||
def test_get_oracle_moves_negative_O(tsys, vocab):
|
||||
|
@ -75,6 +77,7 @@ def test_get_oracle_moves_negative_O(tsys, vocab):
|
|||
tsys.preprocess_gold(gold)
|
||||
act_classes = tsys.get_oracle_sequence(doc, gold)
|
||||
names = [tsys.get_class_name(act) for act in act_classes]
|
||||
assert names
|
||||
|
||||
|
||||
def test_doc_add_entities_set_ents_iob(en_vocab):
|
||||
|
|
|
@ -47,34 +47,34 @@ def test_parser_ancestors(tree, cyclic_tree, partial_tree, multirooted_tree):
|
|||
|
||||
|
||||
def test_parser_contains_cycle(tree, cyclic_tree, partial_tree, multirooted_tree):
|
||||
assert contains_cycle(tree) == None
|
||||
assert contains_cycle(tree) is None
|
||||
assert contains_cycle(cyclic_tree) == set([3, 4, 5])
|
||||
assert contains_cycle(partial_tree) == None
|
||||
assert contains_cycle(multirooted_tree) == None
|
||||
assert contains_cycle(partial_tree) is None
|
||||
assert contains_cycle(multirooted_tree) is None
|
||||
|
||||
|
||||
def test_parser_is_nonproj_arc(nonproj_tree, partial_tree, multirooted_tree):
|
||||
assert is_nonproj_arc(0, nonproj_tree) == False
|
||||
assert is_nonproj_arc(1, nonproj_tree) == False
|
||||
assert is_nonproj_arc(2, nonproj_tree) == False
|
||||
assert is_nonproj_arc(3, nonproj_tree) == False
|
||||
assert is_nonproj_arc(4, nonproj_tree) == False
|
||||
assert is_nonproj_arc(5, nonproj_tree) == False
|
||||
assert is_nonproj_arc(6, nonproj_tree) == False
|
||||
assert is_nonproj_arc(7, nonproj_tree) == True
|
||||
assert is_nonproj_arc(8, nonproj_tree) == False
|
||||
assert is_nonproj_arc(7, partial_tree) == False
|
||||
assert is_nonproj_arc(17, multirooted_tree) == False
|
||||
assert is_nonproj_arc(16, multirooted_tree) == True
|
||||
assert is_nonproj_arc(0, nonproj_tree) is False
|
||||
assert is_nonproj_arc(1, nonproj_tree) is False
|
||||
assert is_nonproj_arc(2, nonproj_tree) is False
|
||||
assert is_nonproj_arc(3, nonproj_tree) is False
|
||||
assert is_nonproj_arc(4, nonproj_tree) is False
|
||||
assert is_nonproj_arc(5, nonproj_tree) is False
|
||||
assert is_nonproj_arc(6, nonproj_tree) is False
|
||||
assert is_nonproj_arc(7, nonproj_tree) is True
|
||||
assert is_nonproj_arc(8, nonproj_tree) is False
|
||||
assert is_nonproj_arc(7, partial_tree) is False
|
||||
assert is_nonproj_arc(17, multirooted_tree) is False
|
||||
assert is_nonproj_arc(16, multirooted_tree) is True
|
||||
|
||||
|
||||
def test_parser_is_nonproj_tree(
|
||||
proj_tree, nonproj_tree, partial_tree, multirooted_tree
|
||||
):
|
||||
assert is_nonproj_tree(proj_tree) == False
|
||||
assert is_nonproj_tree(nonproj_tree) == True
|
||||
assert is_nonproj_tree(partial_tree) == False
|
||||
assert is_nonproj_tree(multirooted_tree) == True
|
||||
assert is_nonproj_tree(proj_tree) is False
|
||||
assert is_nonproj_tree(nonproj_tree) is True
|
||||
assert is_nonproj_tree(partial_tree) is False
|
||||
assert is_nonproj_tree(multirooted_tree) is True
|
||||
|
||||
|
||||
def test_parser_pseudoprojectivity(en_tokenizer):
|
||||
|
@ -100,8 +100,8 @@ def test_parser_pseudoprojectivity(en_tokenizer):
|
|||
|
||||
assert nonproj.decompose("X||Y") == ("X", "Y")
|
||||
assert nonproj.decompose("X") == ("X", "")
|
||||
assert nonproj.is_decorated("X||Y") == True
|
||||
assert nonproj.is_decorated("X") == False
|
||||
assert nonproj.is_decorated("X||Y") is True
|
||||
assert nonproj.is_decorated("X") is False
|
||||
|
||||
nonproj._lift(0, tree)
|
||||
assert tree == [2, 2, 2]
|
||||
|
|
|
@ -25,7 +25,7 @@ def test_parser_parse_one_word_sentence(en_tokenizer, en_parser, text):
|
|||
)
|
||||
|
||||
assert len(doc) == 1
|
||||
with en_parser.step_through(doc) as _:
|
||||
with en_parser.step_through(doc) as _: # noqa: F841
|
||||
pass
|
||||
assert doc[0].dep != 0
|
||||
|
||||
|
@ -33,7 +33,7 @@ def test_parser_parse_one_word_sentence(en_tokenizer, en_parser, text):
|
|||
@pytest.mark.xfail
|
||||
def test_parser_initial(en_tokenizer, en_parser):
|
||||
text = "I ate the pizza with anchovies."
|
||||
heads = [1, 0, 1, -2, -3, -1, -5]
|
||||
# heads = [1, 0, 1, -2, -3, -1, -5]
|
||||
transition = ["L-nsubj", "S", "L-det"]
|
||||
tokens = en_tokenizer(text)
|
||||
apply_transition_sequence(en_parser, tokens, transition)
|
||||
|
|
|
@ -71,7 +71,7 @@ def test_parser_space_attachment_intermediate_trailing(en_tokenizer, en_parser):
|
|||
def test_parser_space_attachment_space(en_tokenizer, en_parser, text, length):
|
||||
doc = Doc(en_parser.vocab, words=text)
|
||||
assert len(doc) == length
|
||||
with en_parser.step_through(doc) as _:
|
||||
with en_parser.step_through(doc) as _: # noqa: F841
|
||||
pass
|
||||
assert doc[0].is_space
|
||||
for token in doc:
|
||||
|
|
|
@ -20,7 +20,6 @@ def test_train_with_many_entity_types():
|
|||
optimizer = nlp.begin_training()
|
||||
for i in range(20):
|
||||
losses = {}
|
||||
index = 0
|
||||
random.shuffle(train_data)
|
||||
for statement, entities in train_data:
|
||||
nlp.update([statement], [entities], sgd=optimizer, losses=losses, drop=0.5)
|
||||
|
|
|
@ -152,6 +152,7 @@ def test_issue589():
|
|||
vocab = Vocab()
|
||||
vocab.strings.set_frozen(True)
|
||||
doc = Doc(vocab, words=["whata"])
|
||||
assert doc
|
||||
|
||||
|
||||
def test_issue590(en_vocab):
|
||||
|
@ -216,7 +217,7 @@ def test_issue615(en_tokenizer):
|
|||
doc = en_tokenizer(text)
|
||||
matcher = Matcher(doc.vocab)
|
||||
matcher.add(label, merge_phrases, pattern)
|
||||
match = matcher(doc)
|
||||
matcher(doc)
|
||||
entities = list(doc.ents)
|
||||
assert entities != []
|
||||
assert entities[0].label != 0
|
||||
|
@ -331,8 +332,7 @@ def test_issue850():
|
|||
handle the ambiguity correctly."""
|
||||
vocab = Vocab(lex_attr_getters={LOWER: lambda string: string.lower()})
|
||||
matcher = Matcher(vocab)
|
||||
IS_ANY_TOKEN = matcher.vocab.add_flag(lambda x: True)
|
||||
pattern = [{"LOWER": "bob"}, {"OP": "*", "IS_ANY_TOKEN": True}, {"LOWER": "frank"}]
|
||||
pattern = [{"LOWER": "bob"}, {"OP": "*"}, {"LOWER": "frank"}]
|
||||
matcher.add("FarAway", None, pattern)
|
||||
doc = Doc(matcher.vocab, words=["bob", "and", "and", "frank"])
|
||||
match = matcher(doc)
|
||||
|
@ -346,7 +346,6 @@ def test_issue850_basic():
|
|||
"""Test Matcher matches with '*' operator and Boolean flag"""
|
||||
vocab = Vocab(lex_attr_getters={LOWER: lambda string: string.lower()})
|
||||
matcher = Matcher(vocab)
|
||||
IS_ANY_TOKEN = matcher.vocab.add_flag(lambda x: True)
|
||||
pattern = [{"LOWER": "bob"}, {"OP": "*", "LOWER": "and"}, {"LOWER": "frank"}]
|
||||
matcher.add("FarAway", None, pattern)
|
||||
doc = Doc(matcher.vocab, words=["bob", "and", "and", "frank"])
|
||||
|
@ -405,12 +404,13 @@ def test_issue912(en_vocab, text, tag, lemma):
|
|||
|
||||
def test_issue957(en_tokenizer):
|
||||
"""Test that spaCy doesn't hang on many periods."""
|
||||
# skip test if pytest-timeout is not installed
|
||||
timeout = pytest.importorskip("pytest-timeout")
|
||||
# Skip test if pytest-timeout is not installed
|
||||
pytest.importorskip("pytest-timeout")
|
||||
string = "0"
|
||||
for i in range(1, 100):
|
||||
string += ".%d" % i
|
||||
doc = en_tokenizer(string)
|
||||
assert doc
|
||||
|
||||
|
||||
@pytest.mark.xfail
|
||||
|
|
|
@ -138,12 +138,12 @@ def test_issue1757():
|
|||
"""Test comparison against None doesn't cause segfault."""
|
||||
doc = Doc(Vocab(), words=["a", "b", "c"])
|
||||
assert not doc[0] < None
|
||||
assert not doc[0] == None
|
||||
assert not doc[0] is None
|
||||
assert doc[0] >= None
|
||||
assert not doc[:2] < None
|
||||
assert not doc[:2] == None
|
||||
assert not doc[:2] is None
|
||||
assert doc[:2] >= None
|
||||
assert not doc.vocab["a"] == None
|
||||
assert not doc.vocab["a"] is None
|
||||
assert not doc.vocab["a"] < None
|
||||
|
||||
|
||||
|
|
|
@ -74,4 +74,4 @@ def test_issue2482():
|
|||
nlp = Italian()
|
||||
nlp.add_pipe(nlp.create_pipe("ner"))
|
||||
b = nlp.to_bytes()
|
||||
nlp2 = Italian().from_bytes(b)
|
||||
Italian().from_bytes(b)
|
||||
|
|
|
@ -8,3 +8,4 @@ def test_issue2626(en_tokenizer):
|
|||
ABLEItemColumn IAcceptance Limits of ErrorIn-Service Limits of ErrorColumn IIColumn IIIColumn IVColumn VComputed VolumeUnder Registration of\xa0VolumeOver Registration of\xa0VolumeUnder Registration of\xa0VolumeOver Registration of\xa0VolumeCubic FeetCubic FeetCubic FeetCubic FeetCubic Feet1Up to 10.0100.0050.0100.005220.0200.0100.0200.010350.0360.0180.0360.0184100.0500.0250.0500.0255Over 100.5% of computed volume0.25% of computed volume0.5% of computed volume0.25% of computed volume TABLE ItemColumn IAcceptance Limits of ErrorIn-Service Limits of ErrorColumn IIColumn IIIColumn IVColumn VComputed VolumeUnder Registration of\xa0VolumeOver Registration of\xa0VolumeUnder Registration of\xa0VolumeOver Registration of\xa0VolumeCubic FeetCubic FeetCubic FeetCubic FeetCubic Feet1Up to 10.0100.0050.0100.005220.0200.0100.0200.010350.0360.0180.0360.0184100.0500.0250.0500.0255Over 100.5% of computed volume0.25% of computed volume0.5% of computed volume0.25% of computed volume ItemColumn IAcceptance Limits of ErrorIn-Service Limits of ErrorColumn IIColumn IIIColumn IVColumn VComputed VolumeUnder Registration of\xa0VolumeOver Registration of\xa0VolumeUnder Registration of\xa0VolumeOver Registration of\xa0VolumeCubic FeetCubic FeetCubic FeetCubic FeetCubic Feet1Up to 10.0100.0050.0100.005220.0200.0100.0200.010350.0360.0180.0360.0184100.0500.0250.0500.0255Over 100.5% of computed volume0.25% of computed volume0.5% of computed volume0.25% of computed volume
|
||||
"""
|
||||
doc = en_tokenizer(text)
|
||||
assert doc
|
||||
|
|
|
@ -9,14 +9,6 @@ def test_issue2671():
|
|||
"""Ensure the correct entity ID is returned for matches with quantifiers.
|
||||
See also #2675
|
||||
"""
|
||||
|
||||
def get_rule_id(nlp, matcher, doc):
|
||||
matches = matcher(doc)
|
||||
for match_id, start, end in matches:
|
||||
rule_id = nlp.vocab.strings[match_id]
|
||||
span = doc[start:end]
|
||||
return rule_id
|
||||
|
||||
nlp = English()
|
||||
matcher = Matcher(nlp.vocab)
|
||||
pattern_id = "test_pattern"
|
||||
|
@ -28,5 +20,9 @@ def test_issue2671():
|
|||
matcher.add(pattern_id, None, pattern)
|
||||
doc1 = nlp("This is a high-adrenaline situation.")
|
||||
doc2 = nlp("This is a high adrenaline situation.")
|
||||
assert get_rule_id(nlp, matcher, doc1) == pattern_id
|
||||
assert get_rule_id(nlp, matcher, doc2) == pattern_id
|
||||
matches1 = matcher(doc1)
|
||||
for match_id, start, end in matches1:
|
||||
assert nlp.vocab.strings[match_id] == pattern_id
|
||||
matches2 = matcher(doc2)
|
||||
for match_id, start, end in matches2:
|
||||
assert nlp.vocab.strings[match_id] == pattern_id
|
||||
|
|
|
@ -72,9 +72,8 @@ def test_to_from_bytes(parser, blank_parser):
|
|||
reason="This seems to be a dict ordering bug somewhere. Only failing on some platforms."
|
||||
)
|
||||
def test_serialize_tagger_roundtrip_bytes(en_vocab, taggers):
|
||||
tagger1, tagger2 = taggers
|
||||
tagger1 = taggers[0]
|
||||
tagger1_b = tagger1.to_bytes()
|
||||
tagger2_b = tagger2.to_bytes()
|
||||
tagger1 = tagger1.from_bytes(tagger1_b)
|
||||
assert tagger1.to_bytes() == tagger1_b
|
||||
new_tagger1 = Tagger(en_vocab).from_bytes(tagger1_b)
|
||||
|
@ -114,4 +113,4 @@ def test_serialize_tensorizer_roundtrip_disk(en_vocab):
|
|||
def test_serialize_textcat_empty(en_vocab):
|
||||
# See issue #1105
|
||||
textcat = TextCategorizer(en_vocab, labels=["ENTITY", "ACTION", "MODIFIER"])
|
||||
textcat_bytes = textcat.to_bytes()
|
||||
textcat.to_bytes()
|
||||
|
|
|
@ -19,7 +19,7 @@ def test_serialize_custom_tokenizer(en_vocab, en_tokenizer):
|
|||
serialized and deserialized correctly (see #2494)."""
|
||||
tokenizer = Tokenizer(en_vocab, suffix_search=en_tokenizer.suffix_search)
|
||||
tokenizer_bytes = tokenizer.to_bytes()
|
||||
new_tokenizer = Tokenizer(en_vocab).from_bytes(tokenizer_bytes)
|
||||
Tokenizer(en_vocab).from_bytes(tokenizer_bytes)
|
||||
|
||||
|
||||
@pytest.mark.skip(reason="Currently unreliable across platforms")
|
||||
|
|
|
@ -45,7 +45,7 @@ def test_align_i2j(string1, string2, i2j):
|
|||
("t", "catsie", [-1, -1, 0, -1, -1, -1]),
|
||||
],
|
||||
)
|
||||
def test_align_i2j(string1, string2, j2i):
|
||||
def test_align_i2j_2(string1, string2, j2i):
|
||||
output_cost, output_i2j, output_j2i, matrix = align(string1, string2)
|
||||
assert list(output_j2i) == j2i
|
||||
|
||||
|
|
|
@ -75,7 +75,7 @@ def test_displacy_spans(en_vocab):
|
|||
|
||||
def test_displacy_raises_for_wrong_type(en_vocab):
|
||||
with pytest.raises(ValueError):
|
||||
html = displacy.render("hello world")
|
||||
displacy.render("hello world")
|
||||
|
||||
|
||||
def test_PrecomputableAffine(nO=4, nI=5, nF=3, nP=2):
|
||||
|
|
|
@ -41,21 +41,21 @@ def test_vocab_lexeme_is_digit(en_vocab):
|
|||
|
||||
def test_vocab_lexeme_add_flag_auto_id(en_vocab):
|
||||
is_len4 = en_vocab.add_flag(lambda string: len(string) == 4)
|
||||
assert en_vocab["1999"].check_flag(is_len4) == True
|
||||
assert en_vocab["1999"].check_flag(IS_DIGIT) == True
|
||||
assert en_vocab["199"].check_flag(is_len4) == False
|
||||
assert en_vocab["199"].check_flag(IS_DIGIT) == True
|
||||
assert en_vocab["the"].check_flag(is_len4) == False
|
||||
assert en_vocab["dogs"].check_flag(is_len4) == True
|
||||
assert en_vocab["1999"].check_flag(is_len4) is True
|
||||
assert en_vocab["1999"].check_flag(IS_DIGIT) is True
|
||||
assert en_vocab["199"].check_flag(is_len4) is False
|
||||
assert en_vocab["199"].check_flag(IS_DIGIT) is True
|
||||
assert en_vocab["the"].check_flag(is_len4) is False
|
||||
assert en_vocab["dogs"].check_flag(is_len4) is True
|
||||
|
||||
|
||||
def test_vocab_lexeme_add_flag_provided_id(en_vocab):
|
||||
is_len4 = en_vocab.add_flag(lambda string: len(string) == 4, flag_id=IS_DIGIT)
|
||||
assert en_vocab["1999"].check_flag(is_len4) == True
|
||||
assert en_vocab["199"].check_flag(is_len4) == False
|
||||
assert en_vocab["199"].check_flag(IS_DIGIT) == False
|
||||
assert en_vocab["the"].check_flag(is_len4) == False
|
||||
assert en_vocab["dogs"].check_flag(is_len4) == True
|
||||
assert en_vocab["1999"].check_flag(is_len4) is True
|
||||
assert en_vocab["199"].check_flag(is_len4) is False
|
||||
assert en_vocab["199"].check_flag(IS_DIGIT) is False
|
||||
assert en_vocab["the"].check_flag(is_len4) is False
|
||||
assert en_vocab["dogs"].check_flag(is_len4) is True
|
||||
|
||||
|
||||
def test_lexeme_bytes_roundtrip(en_vocab):
|
||||
|
|
|
@ -24,7 +24,7 @@ def test_stringstore_from_api_docs(stringstore):
|
|||
assert stringstore[apple_hash] == "apple"
|
||||
assert "apple" in stringstore
|
||||
assert "cherry" not in stringstore
|
||||
orange_hash = stringstore.add("orange")
|
||||
stringstore.add("orange")
|
||||
all_strings = [s for s in stringstore]
|
||||
assert all_strings == ["apple", "orange"]
|
||||
banana_hash = stringstore.add("banana")
|
||||
|
@ -63,7 +63,7 @@ def test_stringstore_retrieve_id(stringstore, text):
|
|||
def test_stringstore_med_string(stringstore, text1, text2):
|
||||
store = stringstore.add(text1)
|
||||
assert stringstore[store] == text1.decode("utf8")
|
||||
dummy = stringstore.add(text2)
|
||||
stringstore.add(text2)
|
||||
assert stringstore[text1] == store
|
||||
|
||||
|
||||
|
|
|
@ -273,9 +273,9 @@ def test_vocab_add_vector():
|
|||
|
||||
def test_vocab_prune_vectors():
|
||||
vocab = Vocab()
|
||||
_ = vocab["cat"]
|
||||
_ = vocab["dog"]
|
||||
_ = vocab["kitten"]
|
||||
_ = vocab["cat"] # noqa: F841
|
||||
_ = vocab["dog"] # noqa: F841
|
||||
_ = vocab["kitten"] # noqa: F841
|
||||
data = numpy.ndarray((5, 3), dtype="f")
|
||||
data[0] = 1.0
|
||||
data[1] = 2.0
|
||||
|
|
|
@ -42,6 +42,6 @@ def test_vocab_api_symbols(en_vocab, string, symbol):
|
|||
|
||||
@pytest.mark.parametrize("text", "Hello")
|
||||
def test_vocab_api_contains(en_vocab, text):
|
||||
_ = en_vocab[text]
|
||||
_ = en_vocab[text] # noqa: F841
|
||||
assert text in en_vocab
|
||||
assert "LKsdjvlsakdvlaksdvlkasjdvljasdlkfvm" not in en_vocab
|
||||
|
|
|
@ -46,7 +46,6 @@ class Binder(object):
|
|||
|
||||
def get_docs(self, vocab):
|
||||
"""Recover Doc objects from the annotations, using the given vocab."""
|
||||
attrs = self.attrs
|
||||
for string in self.strings:
|
||||
vocab[string]
|
||||
orth_col = self.attrs.index(ORTH)
|
||||
|
|
Loading…
Reference in New Issue
Block a user