Beispiel #1
0
 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)
Beispiel #2
0
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)
Beispiel #3
0
 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)
Beispiel #4
0
 def test_returns_none_if_event_not_a_message(self):
     mockEvent = {'type': 'some_other_type'}
     response = parse_message(mockEvent)
     self.assertIsNone(response)