mirror of
https://github.com/python-telegram-bot/python-telegram-bot.git
synced 2026-06-19 07:35:19 +00:00
Correct isinstance check variable in _MergedFilter.__init__ (#5215)
This commit is contained in:
committed by
GitHub
parent
6d9e17a5dc
commit
7db5b4314a
@@ -0,0 +1,5 @@
|
||||
bugfixes = "Fixed incorrect isinstance check in class telegram.ext.filters._MergedFilter for or_filter."
|
||||
[[pull_requests]]
|
||||
uid = "5125"
|
||||
author_uids = ["gistrec"]
|
||||
closes_threads = []
|
||||
@@ -430,7 +430,7 @@ class _MergedFilter(UpdateFilter):
|
||||
):
|
||||
self.data_filter = True
|
||||
self.or_filter = or_filter
|
||||
if self.or_filter and not isinstance(self.and_filter, bool) and self.or_filter.data_filter:
|
||||
if self.or_filter and not isinstance(self.or_filter, bool) and self.or_filter.data_filter:
|
||||
self.data_filter = True
|
||||
|
||||
@staticmethod
|
||||
|
||||
@@ -276,6 +276,18 @@ class TestFilters:
|
||||
result = (filters.COMMAND | filters.Regex(r"linked param")).check_update(update)
|
||||
assert result is True
|
||||
|
||||
def test_merged_filter_or_data_filter(self, update):
|
||||
sre_type = type(re.match("", ""))
|
||||
update.message.text = "deep-linked param"
|
||||
update.message.entities = []
|
||||
# COMMAND doesn't match; or_filter (Regex, a data filter) should return match data
|
||||
result = (filters.COMMAND | filters.Regex(r"linked param")).check_update(update)
|
||||
assert result
|
||||
assert isinstance(result, dict)
|
||||
matches = result["matches"]
|
||||
assert isinstance(matches, list)
|
||||
assert all(type(res) is sre_type for res in matches)
|
||||
|
||||
def test_regex_complex_merges(self, update, message_origin_user):
|
||||
sre_type = type(re.match("", ""))
|
||||
update.message.text = "test it out"
|
||||
|
||||
Reference in New Issue
Block a user