Fix typechecks and tests

This commit is contained in:
Lonami Exo 2024-03-16 16:37:26 +01:00
parent 3250f9ec37
commit 854096e9d3
6 changed files with 13 additions and 9 deletions

View File

@ -25,8 +25,8 @@ The following types are chat-like:
* The ``'me'`` literal string. This represents the account that is logged in ("yourself").
* An ``'@username'``. The at-sign ``@`` is optional. Note that links are not supported.
* An ``'+1 23'`` phone number string. It must be an ``str`` and start with the plus-sign ``+`` character.
* An ``123`` integer identifier. It must be an ``int`` and cannot be negative.
* An ``'+1 23'`` phone number string. It must be an :class:`str` and start with the plus-sign ``+`` character.
* An ``123`` integer identifier. It must be an :class:`int` and cannot be negative.
* An existing :class:`~types.User`, :class:`~types.Group` or :class:`~types.Channel`.
* A :class:`~types.PackedChat`.
@ -83,7 +83,7 @@ If you got an Bot API-style ID from somewhere else, you will need to explicitly
from telethon.types import PackedChat, PackedType
chat = PackedChat(PackedType.BROADCAST, 1234, None)
# ...you need to explicitly create a PackedChat with id=1234 and set the corresponding type (a channel).
# The access hash (see below) will be ``None``, which may or may not work.
# The access hash (see below) will be None, which may or may not work.
Encountering chats

View File

@ -112,6 +112,12 @@ Private definitions
.. autoclass:: OutFileLike
.. currentmodule:: telethon._impl.mtproto.mtp.types
.. class:: MsgId
New-type wrapper around :class:`int` used as a message identifier.
.. currentmodule:: telethon._impl.mtsender.sender
.. autoclass:: AsyncReader

View File

@ -20,4 +20,4 @@ class Data(Combinable):
def __call__(self, event: Event) -> bool:
data = getattr(event, "data", None)
return self._data == data if data is not None else False
return self._data == data if isinstance(data, bytes) else False

View File

@ -79,9 +79,7 @@ class ButtonCallback(Event):
"""
pid = peer_id(self._raw.peer)
chat = self._chat_map.get(pid)
if not chat:
chat = await self._client._resolve_to_packed(pid)
chat = self._chat_map.get(pid) or await self._client._resolve_to_packed(pid)
lst = CherryPickedList(self._client, chat, [])
lst._ids.append(

View File

@ -497,7 +497,7 @@ class Message(metaclass=NoPublicConstructor):
else:
return False
def __bool__(self):
def __bool__(self) -> bool:
return not isinstance(self._raw, types.MessageEmpty)

View File

@ -32,7 +32,7 @@ def test_generic_functions_use_bytes_parameters() -> None:
)
result = gen_py_code(functiondefs=definitions)
assert "invoke_with_layer" in result
assert "query: bytes" in result
assert "query: _bytes" in result
assert "buffer += query" in result