Exemple #1
0
 def _create_message(buttons=None, from_user=None, **kwargs):
     # if chat is not specified - assume inline message
     inline = not bool(kwargs.get('chat') or kwargs.get('chat_id'))
     msg_id = ('id' in kwargs and kwargs.pop('id')) or get_id()
     if not inline:
         chat_id = kwargs.get('chat_id') or kwargs.get('chat').id
         msg_id = Message.get_id(chat_id, msg_id)
     fields = {
         'id': msg_id,
         'date': timezone.now(),
         'from_user': from_user or create_user(),
         'inline_message_id': msg_id if inline else None,
         **kwargs,
     }
     msg = Message.objects.create(**fields)
     if buttons:
         msg.set_buttons(buttons)
     return msg
Exemple #2
0
 def test_get_id(self):
     assert Message.get_id('a', 'b', 'c') == 'c'
     assert Message.get_id('a', 'b') == 'a_b'
     assert Message.get_id('a', 'b_c') == 'b_c'
     assert Message.get_id('a', None) == 'a'