Ejemplo n.º 1
0
    def test_is_reply_to_bot_message_handler(self, mocker, fake_message_dict, fake_user_dict):
        fake_reply_message_dict = fake_message_dict.copy()

        bot = TululBot('TOKEN')
        bot_id = 12345

        class FakeUser:
            def __init__(self, id):
                self.id = id

        bot.user = FakeUser(bot_id)
        mock_message_handler = mocker.patch.object(bot._telebot, 'message_handler',
                                                   autospec=True)

        fake_user_dict['id'] = bot_id
        bot_message = 'Hah?'
        fake_message_dict['text'] = bot_message
        fake_message_dict['from'] = fake_user_dict
        fake_reply_message_dict['reply_to_message'] = fake_message_dict
        fake_reply_message = Message.from_dict(fake_reply_message_dict)

        @bot.message_handler(is_reply_to_bot=bot_message)
        def handle(message):
            pass

        args, kwargs = mock_message_handler.call_args
        assert len(args) == 0
        assert len(kwargs) == 1
        assert 'func' in kwargs
        func = kwargs['func']
        assert func(fake_reply_message)
Ejemplo n.º 2
0
    def test_create_is_reply_to_filter(self, mocker, fake_message_dict, fake_user_dict):
        fake_replied_message_dict = fake_message_dict.copy()

        fake_message = types.Message.de_json(fake_message_dict)
        fake_replied_message = types.Message.de_json(fake_replied_message_dict)

        bot_user = types.User.de_json(fake_user_dict)
        bot_message = 'Message text from bot goes here'
        fake_replied_message.text = bot_message
        fake_replied_message.from_user = bot_user
        fake_message.reply_to_message = fake_replied_message

        bot = TululBot('TOKEN')
        bot.user = bot_user

        assert bot.create_is_reply_to_filter(bot_message)(fake_message)
        assert not bot.create_is_reply_to_filter('foo bar')(fake_message)
Ejemplo n.º 3
0
    def test_create_is_reply_to_filter(self, mocker, fake_message_dict,
                                       fake_user_dict):
        fake_replied_message_dict = fake_message_dict.copy()

        fake_message = types.Message.de_json(fake_message_dict)
        fake_replied_message = types.Message.de_json(fake_replied_message_dict)

        bot_user = types.User.de_json(fake_user_dict)
        bot_message = 'Message text from bot goes here'
        fake_replied_message.text = bot_message
        fake_replied_message.from_user = bot_user
        fake_message.reply_to_message = fake_replied_message

        bot = TululBot('TOKEN')
        bot.user = bot_user

        assert bot.create_is_reply_to_filter(bot_message)(fake_message)
        assert not bot.create_is_reply_to_filter('foo bar')(fake_message)