def test_transform_double_syllable_consonant_stop(consonant, vowel1, vowel2): assume(all(vowel in 'eiou' for vowel in [vowel1, vowel2])) vowel_pattern = ''.join([vowel1, vowel2]) assume(vowel_pattern in vowel_patterns) syllable1, syllable2 = [''.join([consonant, v]) for v in [vowel1, vowel2]] expected = ''.join( [syllable1, symbols[vowel_pattern], symbols['consonant_stop']]) assert transform([syllable1, syllable2, consonant]) == [expected]
def test_transform_vowel_pattern(consonant, vowel1, vowel2): def concat(*vowels): return [''.join([consonant, vowel]) for vowel in vowels] vowel_pattern = ''.join([vowel1, vowel2]) assume(vowel_pattern in symbols) syllable1, syllable2 = concat(vowel1, vowel2) expected = ''.join([syllable1, symbols[vowel_pattern]]) assert transform([syllable1, syllable2]) == [expected]
def test_transform_double_syllable_consonant_stop(consonant, vowel1, vowel2): def concat(*vowels): return [''.join([consonant, vowel]) for vowel in vowels] assume(all(vowel in 'eiou' for vowel in [vowel1, vowel2])) vowel_pattern = ''.join([vowel1, vowel2]) assume(vowel_pattern in symbols) syllable1, syllable2 = concat(vowel1, vowel2) expected = ''.join( [syllable1, symbols[vowel_pattern], symbols['consonant_stop']]) assert transform([syllable1, syllable2, consonant]) == [expected]
def test_transform_double_consonant_stop(consonant): syllable = ''.join([consonant, 'a']) expected = ''.join([syllable, symbols['double_consonant_stop']]) assert transform([syllable, syllable, consonant]) == [expected]
def test_transform_double_vowel(vowel): expected = ''.join([vowel, symbols['double_syllable']]) assert transform([vowel] * 2) == [expected]
def test_transform_consonant_stop(consonant, vowel): syllable = ''.join([consonant, vowel]) expected = ''.join([syllable, symbols['consonant_stop']]) assert transform([syllable, consonant]) == [expected]
def test_transform_non_trailing_consonant_then_hyphen(consonant, vowel): expected = ''.join([consonant, symbols['non_trailing_consonant']]) assert transform([consonant, '-', vowel]) == [expected, vowel]
def test_transform_non_trailing_consonant(consonant): expected1 = ''.join([consonant, symbols['non_trailing_consonant']]) expected2 = ''.join([consonant, symbols['trailing_consonant']]) assert transform([consonant] * 2) == [expected1, expected2]
def test_transform_trailing_consonant_then_punctuation(consonant, punctuation): expected = ''.join([consonant, symbols['trailing_consonant']]) assert transform([consonant, punctuation]) == [expected, punctuation]
def test_transform_trailing_consonant_then_whitespace(consonant, whitespace): expected = ''.join([consonant, symbols['trailing_consonant']]) assert transform([consonant, whitespace]) == [expected, whitespace]
def test_transform_trailing_consonant(consonant): expected = ''.join([consonant, symbols['trailing_consonant']]) assert transform([consonant]) == [expected]
def test_transform_triple_syllable(syllable): doubled_syllable = ''.join([syllable, symbols['double_syllable']]) assert transform([syllable] * 3) == [syllable, doubled_syllable]
def test_transform_vowel_pattern(consonant, vowel1, vowel2): vowel_pattern = ''.join([vowel1, vowel2]) assume(vowel_pattern in vowel_patterns) syllable1, syllable2 = [''.join([consonant, v]) for v in [vowel1, vowel2]] expected = ''.join([syllable1, symbols[vowel_pattern]]) assert transform([syllable1, syllable2]) == [expected]