def parse_message(message): message = gtp.pre_engine(message).strip() first, rest = (message.split(" ", 1) + [None])[:2] if first.isdigit(): message_id = int(first) if rest is not None: command, arguments = (rest.split(" ", 1) + [None])[:2] else: command, arguments = None, None else: message_id = None command, arguments = first, rest command = command.replace("-", "_") # for kgs extensions. return message_id, command, arguments
def test_pre_engine(self): self.assertEqual(pre_engine("foo\rbar"), "foobar") self.assertEqual(pre_engine("foo\nbar"), "foo\nbar") self.assertEqual(pre_engine("foo\tbar"), "foo bar") self.assertEqual(pre_engine("foo # bar"), "foo ")