Spaces:
Running
Running
from ukrainian_tts.stress import sentence_to_stress, stress_with_model | |
def test_stress_table(): | |
examples = [ | |
( | |
"Бабин біб розцвів у дощ — Буде бабі біб у борщ.\n\nБоронила", | |
"Б+абин б+іб розцв+ів +у д+ощ — Б+уде б+абі б+іб +у б+орщ.\n\nБорон+ила", | |
), | |
( | |
"Баби\u0301н біб розцвів.", | |
"Баб+ин б+іб розцв+ів.", | |
), # handle acute accent | |
( | |
"Бабин біб розцвів у дощ — Буде бабі біб у борщ.,,Боронила", | |
"Б+абин б+іб розцв+ів +у д+ощ — Б+уде б+абі б+іб +у б+орщ.,,Борон+ила", | |
), | |
( | |
"Бабин біб розцвів у дощ — Буде бабі біб у борщ.\n\n", | |
"Б+абин б+іб розцв+ів +у д+ощ — Б+уде б+абі б+іб +у б+орщ.\n\n", | |
), | |
# TODO: this example requires sentence-leve lstressifier to work correctly | |
( | |
"Бобер на березі з бобренятами бублики пік.", | |
"Боб+ер н+а бер+езі з бобрен+ятами б+ублики п+ік.", | |
), | |
# TODO: fix Кам'янець-Подільський | |
( | |
"Кам'янець-Подільський - місто в Хмельницькій області України, центр Кам'янець-Подільської міської об'єднаної територіальної громади і Кам'янець-Подільського району.", | |
"Кам'ян+ець-Подільський - м+істо в Хмельн+ицькій +області Укра+їни, ц+ентр Кам'ян+ець-Подільської міськ+ої об'+єднаної територі+альної гром+ади +і Кам'ян+ець-Подільського рай+ону.", | |
), | |
("Привіт, як тебе звати?", "Прив+іт, +як теб+е зв+ати?"), | |
# ("АННА - український панк-рок гурт", "+АННА - укра+їнський панк-р+ок г+урт"), | |
( | |
"Не тільки в Україні таке може бути.", | |
"Н+е т+ільки в Укра+їні так+е м+оже б+ути.", | |
), | |
( | |
"Не тільки в +Укра+їні т+аке може бути.", | |
"Н+е т+ільки в +Укра+їні т+аке м+оже б+ути.", | |
), | |
("два + два", "дв+а + дв+а"), | |
("Н тльк в крн тк мж бт.", "Н тльк в крн тк мж бт."), | |
] | |
for item in examples: | |
assert sentence_to_stress(item[0]) == item[1] | |
examples = [ | |
( | |
"Кам'янець-Подільський - місто в Хмельницькій області України, центр Кам'янець-Подільської міської об'єднаної територіальної громади і Кам'янець-Подільського району.", | |
"к+ам'янець-подільський - м+істо в хм+ельницькій обл+асті укра+їни, ц+ентр к+ам'янець-подільської м+іської об'+єднаної територі+альної гром+ади +і к+ам'янець-подільського рай+ону.", | |
), | |
("Привіт, як тебе звати?", "прив+іт, +як т+ебе зв+ати?"), | |
("АННА - український панк-рок гурт", "+анна - укра+їнський п+анк-рок г+урт"), | |
( | |
"Не тільки в Україні таке може бути.", | |
"н+е т+ільки в укра+їні т+аке м+оже б+ути.", | |
), | |
( | |
"Не тільки в +Укра+їні т+аке може бути.", | |
"н+е т+ільки в +Укра+їні т+аке м+оже б+ути.", | |
), | |
("два + два", "дв+а + дв+а"), | |
("Н тльк в крн тк мж бт.", "н тльк в крн тк мж бт."), | |
] | |
for item in examples: | |
assert sentence_to_stress(item[0], stress_function=stress_with_model) == item[1] | |