def test_combination(self): self.assertMultiLineEqual(decode(encode('zzz ZZ zZ')), 'zzz ZZ zZ')
def test_decode_multiple_whitespace_mixed_in_string(self): self.assertMultiLineEqual(decode('2 hs2q q2w2 '), ' hsqq qww ')
def test_decode_lower_case_string(self): self.assertMultiLineEqual(decode('2a3b4c'), 'aabbbcccc')
def test_decode_string_with_no_single_characters(self): self.assertMultiLineEqual(decode('2A3B4C'), 'AABBBCCCC')
def test_decode_single_characters_with_repeated_characters(self): self.assertMultiLineEqual( decode('12WB12W3B24WB'), 'WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWWWWWWWWWWWWWWWWWWWWWB')
def test_decode_empty_string(self): self.assertMultiLineEqual(decode(''), '')
def test_decode_single_characters_only(self): self.assertMultiLineEqual(decode('XYZ'), 'XYZ')
def test_A100B1_should_return_the_right_result(): # tem 100 às entrada = "A100B1" saida_desejada = "A" * 100 + "B" assert saida_desejada == decode(entrada)
def test_A10_should_return_AAAAAAAAAAAAA(): # tem 10 as entrada = "A10" saida_desejada = "A" * 10 assert saida_desejada == decode(entrada)
def test_A6B2C1_should_return_AAAAAABBC(): entrada = "A6B2C1" saida_desejada = "AAAAAABBC" assert saida_desejada == decode(entrada)
def test_A2B2C2_should_return_AABBCC(): saida_desejada = "AABBCC" entrada = "A2B2C2" assert saida_desejada == decode(entrada)
def test_decode_string_with_single_symbol(): entrada = "A1" saida_desejada = "A" assert saida_desejada == decode(entrada)