Files
storyteller-ml/tts/text/input_parsing/test_parser.py
T
Brandon Thomas 5d5cebe541 Do parsing first
2022-06-30 18:08:36 -04:00

45 lines
2.0 KiB
Python

from tts.text.input_parsing.parser import ArpabetSequence, GraphemeSquence, parse_grapheme_and_arpabet_sequence
class TestParser:
def test_only_text(self):
parsed = parse_grapheme_and_arpabet_sequence("This is a test")
assert len(parsed) == 1
assert isinstance(parsed[0], GraphemeSquence)
def test_only_arpabet(self):
parsed = parse_grapheme_and_arpabet_sequence("{T EH1 S T IH0 NG}")
assert len(parsed) == 1
assert isinstance(parsed[0], ArpabetSequence)
def test_text_and_arpabet(self):
parsed = parse_grapheme_and_arpabet_sequence("This is a {T EH1 S T}")
assert len(parsed) == 2
assert isinstance(parsed[0], GraphemeSquence)
assert isinstance(parsed[1], ArpabetSequence)
def test_text_and_arpabet_interleved_1(self):
parsed = parse_grapheme_and_arpabet_sequence("{DH IH1 S} is a {T EH1 S T}")
assert len(parsed) == 3
assert isinstance(parsed[0], ArpabetSequence)
assert isinstance(parsed[1], GraphemeSquence)
assert isinstance(parsed[2], ArpabetSequence)
def test_text_and_arpabet_interleved_2(self):
parsed = parse_grapheme_and_arpabet_sequence("Check out {DH IH1 S} {T EH1 S T} of the {S IH1 S T AH0 M}")
assert len(parsed) == 5
assert isinstance(parsed[0], GraphemeSquence)
assert isinstance(parsed[1], ArpabetSequence)
assert isinstance(parsed[2], ArpabetSequence)
assert isinstance(parsed[3], GraphemeSquence)
assert isinstance(parsed[4], ArpabetSequence)
def test_text_and_arpabet_interleved_2(self):
parsed = parse_grapheme_and_arpabet_sequence("Check out {DH IH1 S} {T EH1 S T} of the {S IH1 S T AH0 M}.")
assert len(parsed) == 6
assert isinstance(parsed[0], GraphemeSquence)
assert isinstance(parsed[1], ArpabetSequence)
assert isinstance(parsed[2], ArpabetSequence)
assert isinstance(parsed[3], GraphemeSquence)
assert isinstance(parsed[4], ArpabetSequence)
assert isinstance(parsed[5], GraphemeSquence)