コード例 #1
0
    def test_with_pattern(self, callback_query):
        handler = CallbackQueryHandler(self.callback_basic, pattern='.*est.*')

        assert handler.check_update(callback_query)

        callback_query.callback_query.data = 'nothing here'
        assert not handler.check_update(callback_query)
コード例 #2
0
    def test_with_pattern(self, callback_query):
        handler = CallbackQueryHandler(self.callback_basic, pattern='.*est.*')

        assert handler.check_update(callback_query)

        callback_query.callback_query.data = 'nothing here'
        assert not handler.check_update(callback_query)
    def test_with_pattern(self, callback_query):
        handler = CallbackQueryHandler(self.callback_basic, pattern=".*est.*")

        assert handler.check_update(callback_query)

        callback_query.callback_query.data = "nothing here"
        assert not handler.check_update(callback_query)

        callback_query.callback_query.data = None
        callback_query.callback_query.game_short_name = "this is a short game name"
        assert not handler.check_update(callback_query)
    def test_with_callable_pattern(self, callback_query):
        class CallbackData:
            pass

        def pattern(callback_data):
            return isinstance(callback_data, CallbackData)

        handler = CallbackQueryHandler(self.callback_basic, pattern=pattern)

        callback_query.callback_query.data = CallbackData()
        assert handler.check_update(callback_query)
        callback_query.callback_query.data = "callback_data"
        assert not handler.check_update(callback_query)
コード例 #5
0
    def test_basic(self, dp, callback_query):
        handler = CallbackQueryHandler(self.callback_basic)
        dp.add_handler(handler)

        assert handler.check_update(callback_query)

        dp.process_update(callback_query)
        assert self.test_flag
コード例 #6
0
    def test_basic(self, dp, callback_query):
        handler = CallbackQueryHandler(self.callback_basic)
        dp.add_handler(handler)

        assert handler.check_update(callback_query)

        dp.process_update(callback_query)
        assert self.test_flag
コード例 #7
0
    def test_with_type_pattern(self, callback_query):
        class CallbackData:
            pass

        handler = CallbackQueryHandler(self.callback_basic, pattern=CallbackData)

        callback_query.callback_query.data = CallbackData()
        assert handler.check_update(callback_query)
        callback_query.callback_query.data = 'callback_data'
        assert not handler.check_update(callback_query)

        handler = CallbackQueryHandler(self.callback_basic, pattern=bool)

        callback_query.callback_query.data = False
        assert handler.check_update(callback_query)
        callback_query.callback_query.data = 'callback_data'
        assert not handler.check_update(callback_query)
コード例 #8
0
def dispatch_bot_webhook(request):

    try:

        update = telegram.Update.de_json(request.get_json(force=True), bot)
        print(update)

        # Only allow defined users to use the bot
        if update.effective_user.username not in os.environ[
                "COMMUTE_BOT_USERS"].split(","):
            return ("Nothing to gain here")

        print("passed user check")
        callback_query_filter = CallbackQueryHandler(callback_query_callback)

        handler = None
        try:
            if Filters.command.filter(update.message):
                print("command_handler")
                handler = command_callback
        except AttributeError:
            None

        try:
            if Filters.location.filter(update.message):
                print("location_handler")
                handler = location_callback
        except AttributeError:
            None

        try:
            if Filters.text.filter(update.message):
                print("text_handler")
                handler = text_callback
        except AttributeError:
            None

        try:
            if callback_query_filter.check_update(update):
                print("callback_query_filter")
                handler = callback_query_callback
        except AttributeError:
            None

        handler(update)

    except Exception as e:
        print(e)
        bot.send_message("An error occured.")
コード例 #9
0
 def test_other_update_types(self, false_update):
     handler = CallbackQueryHandler(self.callback_basic)
     assert not handler.check_update(false_update)
コード例 #10
0
 def test_other_update_types(self, false_update):
     handler = CallbackQueryHandler(self.callback_basic)
     assert not handler.check_update(false_update)