def test_ascii_lower(self): self.assertEqual('', util.ascii_lower('')) self.assertEqual('a', util.ascii_lower('a')) self.assertEqual('a', util.ascii_lower('A')) self.assertEqual('ab', util.ascii_lower('AB')) self.assertEqual('a b', util.ascii_lower('A B')) self.assertEqual('a b', util.ascii_lower('a B')) self.assertEqual('a-b', util.ascii_lower('A-B')) self.assertEqual('\xD1', util.ascii_lower('\xD1')) self.assertEqual(';2%/*()_-?+z', util.ascii_lower(';2%/*()_-?+Z'))
def calc_message_handler_name(self, message_class): def replace(match): return '%s_%s' % (match.group(1), match.group(2)) underscores = re.sub(r'([a-z])([A-Z])', replace, message_class.__name__) return 'handle_' + util.ascii_lower(underscores)