mirror of
				https://github.com/explosion/spaCy.git
				synced 2025-11-04 09:57:26 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			78 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			78 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
import pytest
 | 
						||
from spacy.lang.mk.lex_attrs import like_num
 | 
						||
 | 
						||
 | 
						||
def test_tokenizer_handles_long_text(mk_tokenizer):
 | 
						||
    text = """
 | 
						||
    Во организациските работи или на нашите собранија со членството, никој од нас не зборуваше за
 | 
						||
    организацијата и идеологијата. Работна беше нашата работа, а не идеолошка. Што се однесува до социјализмот на
 | 
						||
    Делчев, неговата дејност зборува сама за себе - спротивно. Во суштина, водачите си имаа свои основни погледи и
 | 
						||
    свои разбирања за положбата и работите, коишто стоеја пред нив и ги завршуваа со голема упорност, настојчивост и
 | 
						||
    насоченост. Значи, идеологија имаше, само што нивната идеологија имаше своја оригиналност. Македонија денеска,
 | 
						||
    чиста рожба на животот и положбата во Македонија, кои му служеа како база на неговите побуди, беше дејност која
 | 
						||
    имаше потреба од ум за да си најде своја смисла. Таквата идеологија и заемното дејство на умот и срцето му
 | 
						||
    помогнаа на Делчев да не се занесе по патот на својата идеологија... Во суштина, Организацијата и нејзините
 | 
						||
    водачи имаа свои разбирања за работите и положбата во идеен поглед, но тоа беше врската, животот и положбата во
 | 
						||
    Македонија и го внесуваа во својата идеологија гласот на своето срце, и на крај, прибегнуваа до умот,
 | 
						||
    за да најдат смисла или да ѝ дадат. Тоа содејство и заемен сооднос на умот и срцето му помогнаа на Делчев да ја
 | 
						||
    држи својата идеологија во сообразност со положбата на работите... Водачите навистина направија една жртва
 | 
						||
    бидејќи на населението не му зборуваа за своите мисли и идеи. Тие се одрекоа од секаква субјективност во своите
 | 
						||
    мисли. Целта беше да не се зголемуваат целите и задачите како и преданоста во работата. Населението не можеше да
 | 
						||
    ги разбере овие идеи...
 | 
						||
    """
 | 
						||
    tokens = mk_tokenizer(text)
 | 
						||
    assert len(tokens) == 297
 | 
						||
 | 
						||
 | 
						||
@pytest.mark.parametrize(
 | 
						||
    "word,match",
 | 
						||
    [
 | 
						||
        ("10", True),
 | 
						||
        ("1", True),
 | 
						||
        ("10.000", True),
 | 
						||
        ("1000", True),
 | 
						||
        ("бројка", False),
 | 
						||
        ("999,0", True),
 | 
						||
        ("еден", True),
 | 
						||
        ("два", True),
 | 
						||
        ("цифра", False),
 | 
						||
        ("десет", True),
 | 
						||
        ("сто", True),
 | 
						||
        ("број", False),
 | 
						||
        ("илјада", True),
 | 
						||
        ("илјади", True),
 | 
						||
        ("милион", True),
 | 
						||
        (",", False),
 | 
						||
        ("милијарда", True),
 | 
						||
        ("билион", True),
 | 
						||
    ],
 | 
						||
)
 | 
						||
def test_mk_lex_attrs_like_number(mk_tokenizer, word, match):
 | 
						||
    tokens = mk_tokenizer(word)
 | 
						||
    assert len(tokens) == 1
 | 
						||
    assert tokens[0].like_num == match
 | 
						||
 | 
						||
 | 
						||
@pytest.mark.parametrize("word", ["двесте", "два-три", "пет-шест"])
 | 
						||
def test_mk_lex_attrs_capitals(word):
 | 
						||
    assert like_num(word)
 | 
						||
    assert like_num(word.upper())
 | 
						||
 | 
						||
 | 
						||
@pytest.mark.parametrize(
 | 
						||
    "word",
 | 
						||
    [
 | 
						||
        "првиот",
 | 
						||
        "втора",
 | 
						||
        "четврт",
 | 
						||
        "четвртата",
 | 
						||
        "петти",
 | 
						||
        "петто",
 | 
						||
        "стоти",
 | 
						||
        "шеесетите",
 | 
						||
        "седумдесетите",
 | 
						||
    ],
 | 
						||
)
 | 
						||
def test_mk_lex_attrs_like_number_for_ordinal(word):
 | 
						||
    assert like_num(word)
 |