Work on text parsing, testing

This commit is contained in:
Brandon Thomas
2022-06-30 17:47:27 -04:00
parent b20ac5ff89
commit 030d2c9381
12 changed files with 116 additions and 1 deletions
+45
View File
@@ -0,0 +1,45 @@
from tts.text.phonetization.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)