|
21 | 21 |
|
22 | 22 | from discord.types import member |
23 | 23 | from requests import Response |
24 | | -from typing import NamedTuple, Any, ClassVar, NoReturn, Literal, Pattern, overload, Sequence, Iterable |
| 24 | +from typing import NamedTuple, Any, ClassVar, NoReturn, Literal, Pattern, overload, Sequence, Iterable, reveal_type |
25 | 25 |
|
26 | 26 | from . import factories as facts, state as dstate, callbacks, websocket, _types |
27 | 27 | from ._types import Undef, undefined |
@@ -391,16 +391,18 @@ async def get_members( |
391 | 391 | async def get_member(self, guild_id: Snowflake, |
392 | 392 | member_id: Snowflake) -> _types.member.MemberWithUser: |
393 | 393 | locs = _get_higher_locs(1) |
394 | | - guild = locs["self"] |
| 394 | + guild: discord.Guild = locs["self"] |
395 | 395 | member = discord.utils.get(guild.members, id=member_id) |
| 396 | + if member is None: |
| 397 | + raise ValueError(f"No member {member_id} in guild {guild_id}") |
396 | 398 |
|
397 | 399 | return facts.dict_from_object(member) |
398 | 400 |
|
399 | 401 | async def edit_role(self, guild_id: Snowflake, role_id: Snowflake, *, |
400 | 402 | reason: str | None = None, |
401 | 403 | **fields: Any) -> _types.role.Role: |
402 | 404 | locs = _get_higher_locs(1) |
403 | | - role = locs["self"] |
| 405 | + role: discord.Role = locs["self"] |
404 | 406 | guild = role.guild |
405 | 407 |
|
406 | 408 | await callbacks.dispatch_event(CallbackEvent.edit_role, guild, role, fields, reason=reason) |
@@ -538,9 +540,11 @@ async def get_from_cdn(self, url: str) -> bytes: |
538 | 540 | async def get_user(self, user_id: Snowflake) -> _types.user.User: |
539 | 541 | # return self.request(Route('GET', '/users/{user_id}', user_id=user_id)) |
540 | 542 | locs = _get_higher_locs(1) |
541 | | - client = locs["self"] |
| 543 | + client: discord.Client = locs["self"] |
542 | 544 | guild = client.guilds[0] |
543 | 545 | member = discord.utils.get(guild.members, id=user_id) |
| 546 | + if member is None: |
| 547 | + raise ValueError(f"Failed to locate user {user_id} in test state") |
544 | 548 | return facts.dict_from_object(member._user) |
545 | 549 |
|
546 | 550 | async def pin_message(self, channel_id: Snowflake, message_id: Snowflake, |
|
0 commit comments