mirror of https://github.com/explosion/spaCy.git
52 lines
1.2 KiB
Python
52 lines
1.2 KiB
Python
from __future__ import unicode_literals
|
|
|
|
from spacy.en import English
|
|
|
|
import pytest
|
|
|
|
|
|
@pytest.fixture
|
|
def close_puncts():
|
|
return [')', ']', '}', '*']
|
|
|
|
|
|
@pytest.fixture
|
|
def EN():
|
|
return English()
|
|
|
|
|
|
def test_close(close_puncts, EN):
|
|
word_str = 'Hello'
|
|
for p in close_puncts:
|
|
string = word_str + p
|
|
tokens = EN(string, parse=False, tag=False)
|
|
assert len(tokens) == 2
|
|
assert tokens[1].string == p
|
|
assert tokens[0].string == word_str
|
|
|
|
|
|
def test_two_different_close(close_puncts, EN):
|
|
word_str = 'Hello'
|
|
for p in close_puncts:
|
|
string = word_str + p + "'"
|
|
tokens = EN(string, parse=False, tag=False)
|
|
assert len(tokens) == 3
|
|
assert tokens[0].string == word_str
|
|
assert tokens[1].string == p
|
|
assert tokens[2].string == "'"
|
|
|
|
|
|
def test_three_same_close(close_puncts, EN):
|
|
word_str = 'Hello'
|
|
for p in close_puncts:
|
|
string = word_str + p + p + p
|
|
tokens = EN(string, tag=False, parse=False)
|
|
assert len(tokens) == 4
|
|
assert tokens[0].string == word_str
|
|
assert tokens[1].string == p
|
|
|
|
|
|
def test_double_end_quote(EN):
|
|
assert len(EN("Hello''", tag=False, parse=False)) == 2
|
|
assert len(EN("''", tag=False, parse=False)) == 1
|