Add tests and update README
This commit is contained in:
parent
056f93e355
commit
072ca8b0ed
8 changed files with 202 additions and 23 deletions
0
tests/__init__.py
Normal file
0
tests/__init__.py
Normal file
53
tests/test_phonemizer.py
Normal file
53
tests/test_phonemizer.py
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
#!/usr/bin/env python3
|
||||
"""Tests for Phonemizer class"""
|
||||
import unittest
|
||||
|
||||
from espeak_phonemizer import Phonemizer
|
||||
|
||||
|
||||
class PhonemizerTestCase(unittest.TestCase):
|
||||
"""Test cases for Phonemizer"""
|
||||
|
||||
def test_en(self):
|
||||
"""Test basic English"""
|
||||
phonemizer = Phonemizer(default_voice="en-us")
|
||||
phonemes = phonemizer.phonemize("test")
|
||||
self.assertEqual(phonemes, "tˈɛst")
|
||||
|
||||
def test_no_stress(self):
|
||||
"""Test stress removal"""
|
||||
phonemizer = Phonemizer(default_voice="en-us")
|
||||
phonemes = phonemizer.phonemize("test", no_stress=True)
|
||||
self.assertEqual(phonemes, "tɛst")
|
||||
|
||||
def test_phoneme_separator(self):
|
||||
"""Test with phoneme separator"""
|
||||
phonemizer = Phonemizer(default_voice="en-us")
|
||||
phonemes = phonemizer.phonemize("test", phoneme_separator="_")
|
||||
self.assertEqual(phonemes, "t_ˈɛ_s_t")
|
||||
|
||||
def test_word_phoneme_separators(self):
|
||||
"""Test with word and phoneme separators"""
|
||||
phonemizer = Phonemizer(default_voice="en-us")
|
||||
phonemes = phonemizer.phonemize(
|
||||
"test 1", phoneme_separator="_", word_separator="#"
|
||||
)
|
||||
self.assertEqual(phonemes, "t_ˈɛ_s_t#w_ˈʌ_n")
|
||||
|
||||
def test_keep_clause_breakers(self):
|
||||
"""Test keeping punctuation characters that break apart clauses"""
|
||||
phonemizer = Phonemizer(default_voice="en-us")
|
||||
phonemes = phonemizer.phonemize("test: 1, 2, 3!", keep_clause_breakers=True)
|
||||
self.assertEqual(phonemes, "tˈɛst: wˈʌn, tˈuː, θɹˈiː!")
|
||||
|
||||
def test_keep_language_flags(self):
|
||||
"""Test keeping language-switching flags"""
|
||||
phonemizer = Phonemizer(default_voice="fr")
|
||||
|
||||
# Without language flags
|
||||
phonemes = phonemizer.phonemize("library")
|
||||
self.assertEqual(phonemes, "lˈaɪbɹəɹi")
|
||||
|
||||
# With language flags
|
||||
phonemes = phonemizer.phonemize("library", keep_language_flags=True)
|
||||
self.assertEqual(phonemes, "(en)lˈaɪbɹəɹi(fr)")
|
||||
Loading…
Add table
Add a link
Reference in a new issue