def test_can_parse_multiple_recipients(self): mockEvent = { 'type': 'message', 'user': '******', 'text': 'This is a message for <@User2> and <@User3>', 'channel': '#general' } parsed_message = parse_message(mockEvent) self.assertEquals(2, len(parsed_message.recipients)) self.assertEquals(['User2', 'User3'], parsed_message.recipients)
def deal_with_slack_messages(event): slack_message = parse_message(event) if slack_message and slack_message.recipients: populate_user_info() if this_bot['user_id'] in slack_message.recipients: handle_direct_message(slack_message) elif slack_message.sender in slack_message.recipients and slack_message.count_emojis_in_message(): send_message_to_slack(slack_message.channel, f"Nice try, but you can't give yourself {EMOJI_PLURAL}") elif slack_message.count_emojis_in_message(): handle_the_giving_of_emojis(slack_message)
def test_can_parse_message_correctly_with_a_recipient(self): mockEvent = { 'type': 'message', 'user': '******', 'text': '<@User2> This is a message', 'channel': '#general' } parsed_message = parse_message(mockEvent) self.assertEquals('User1', parsed_message.sender) self.assertEquals(['User2'], parsed_message.recipients) self.assertEquals('<@User2> This is a message', parsed_message.message) self.assertEquals('#general', parsed_message.channel)
def test_returns_none_if_event_not_a_message(self): mockEvent = {'type': 'some_other_type'} response = parse_message(mockEvent) self.assertIsNone(response)