2020-10-07 08:25:37 +00:00
|
|
|
|
import pytest
|
2023-06-14 15:48:41 +00:00
|
|
|
|
|
2020-10-07 08:25:37 +00:00
|
|
|
|
from spacy.lang.tr.lex_attrs import like_num
|
|
|
|
|
|
|
|
|
|
|
2020-10-29 08:43:17 +00:00
|
|
|
|
def test_tr_tokenizer_handles_long_text(tr_tokenizer):
|
|
|
|
|
text = """Pamuk nasıl ipliğe dönüştürülür?
|
|
|
|
|
|
2021-01-05 02:41:53 +00:00
|
|
|
|
Sıkıştırılmış balyalar halindeki pamuk, iplik fabrikasına getirildiğinde hem
|
|
|
|
|
lifleri birbirine dolaşmıştır, hem de tarladan toplanırken araya bitkinin
|
|
|
|
|
parçaları karışmıştır. Üstelik balyalardaki pamuğun cinsi aynı olsa bile kalitesi
|
2020-10-29 08:43:17 +00:00
|
|
|
|
değişeceğinden, önce bütün balyaların birbirine karıştırılarak harmanlanması gerekir.
|
|
|
|
|
|
2021-01-05 02:41:53 +00:00
|
|
|
|
Daha sonra pamuk yığınları, liflerin açılıp temizlenmesi için tek bir birim halinde
|
2020-10-29 08:43:17 +00:00
|
|
|
|
birleştirilmiş çeşitli makinelerden geçirilir.Bunlardan biri, dönen tokmaklarıyla
|
|
|
|
|
pamuğu dövüp kabartarak dağınık yumaklar haline getiren ve liflerin arasındaki yabancı
|
|
|
|
|
maddeleri temizleyen hallaç makinesidir. Daha sonra tarak makinesine giren pamuk demetleri,
|
|
|
|
|
herbirinin yüzeyinde yüzbinlerce incecik iğne bulunan döner silindirlerin arasından geçerek lif lif ayrılır
|
2021-01-05 02:41:53 +00:00
|
|
|
|
ve tül inceliğinde gevşek bir örtüye dönüşür. Ama bir sonraki makine bu lifleri dağınık
|
2020-10-29 08:43:17 +00:00
|
|
|
|
ve gevşek bir biçimde birbirine yaklaştırarak 2 cm eninde bir pamuk şeridi haline getirir."""
|
|
|
|
|
tokens = tr_tokenizer(text)
|
|
|
|
|
assert len(tokens) == 146
|
|
|
|
|
|
|
|
|
|
|
2020-10-07 08:25:37 +00:00
|
|
|
|
@pytest.mark.parametrize(
|
|
|
|
|
"word",
|
|
|
|
|
[
|
|
|
|
|
"bir",
|
|
|
|
|
"iki",
|
|
|
|
|
"dört",
|
|
|
|
|
"altı",
|
|
|
|
|
"milyon",
|
|
|
|
|
"100",
|
|
|
|
|
"birinci",
|
|
|
|
|
"üçüncü",
|
|
|
|
|
"beşinci",
|
|
|
|
|
"100üncü",
|
2020-10-10 17:14:48 +00:00
|
|
|
|
"8inci",
|
|
|
|
|
],
|
2020-10-07 08:25:37 +00:00
|
|
|
|
)
|
|
|
|
|
def test_tr_lex_attrs_like_number_cardinal_ordinal(word):
|
|
|
|
|
assert like_num(word)
|
|
|
|
|
|
|
|
|
|
|
2022-03-30 11:16:08 +00:00
|
|
|
|
@pytest.mark.parametrize("word", ["beş", "yedi", "yedinci", "birinci", "milyonuncu"])
|
2020-10-07 08:25:37 +00:00
|
|
|
|
def test_tr_lex_attrs_capitals(word):
|
|
|
|
|
assert like_num(word)
|
|
|
|
|
assert like_num(word.upper())
|