1from translate.lang import factory 2 3 4def test_punctranslate(): 5 """Tests that we can translate punctuation.""" 6 language = factory.getlanguage("ar") 7 assert language.punctranslate("") == "" 8 assert language.punctranslate("abc efg") == "abc efg" 9 assert language.punctranslate("abc efg.") == "abc efg." 10 assert language.punctranslate("abc, efg; d?") == "abc، efg؛ d؟" 11 # See https://github.com/translate/translate/issues/1819 12 assert language.punctranslate("It is called “abc”") == "It is called ”abc“" 13 14 15def test_sentences(): 16 """Tests basic functionality of sentence segmentation.""" 17 language = factory.getlanguage("ar") 18 sentences = language.sentences("") 19 assert sentences == [] 20 21 sentences = language.sentences('يوجد بالفعل مجلد بالإسم "%s". أترغب في استبداله؟') 22 print(sentences) 23 assert sentences == ['يوجد بالفعل مجلد بالإسم "%s".', "أترغب في استبداله؟"] 24 # This probably doesn't make sense: it is just the above reversed, to make sure 25 # we test the '؟' as an end of sentence marker. 26 sentences = language.sentences('أترغب في استبداله؟ يوجد بالفعل مجلد بالإسم "%s".') 27 print(sentences) 28 assert sentences == ["أترغب في استبداله؟", 'يوجد بالفعل مجلد بالإسم "%s".'] 29