fix channel members tool, add debug commands
This commit is contained in:
@@ -24,7 +24,7 @@ def test_get_channel_members_impl_returns_formatted_list() -> None:
|
||||
mock_member2.status = MagicMock(value="idle")
|
||||
|
||||
mock_channel = MagicMock()
|
||||
mock_channel.members = [mock_member1, mock_member2]
|
||||
mock_channel.guild.members = [mock_member1, mock_member2]
|
||||
|
||||
result = get_channel_members_impl(mock_channel)
|
||||
|
||||
@@ -38,7 +38,7 @@ def test_get_channel_members_impl_returns_formatted_list() -> None:
|
||||
def test_get_channel_members_impl_empty() -> None:
|
||||
"""Test get_channel_members_impl with no members."""
|
||||
mock_channel = MagicMock()
|
||||
mock_channel.members = []
|
||||
mock_channel.guild.members = []
|
||||
|
||||
result = get_channel_members_impl(mock_channel)
|
||||
|
||||
@@ -55,7 +55,7 @@ def test_get_channel_members_impl_with_global_name() -> None:
|
||||
mock_member.status = MagicMock(value="dnd")
|
||||
|
||||
mock_channel = MagicMock()
|
||||
mock_channel.members = [mock_member]
|
||||
mock_channel.guild.members = [mock_member]
|
||||
|
||||
result = get_channel_members_impl(mock_channel)
|
||||
|
||||
@@ -72,7 +72,7 @@ def test_get_channel_members_impl_no_status() -> None:
|
||||
mock_member.status = None
|
||||
|
||||
mock_channel = MagicMock()
|
||||
mock_channel.members = [mock_member]
|
||||
mock_channel.guild.members = [mock_member]
|
||||
|
||||
result = get_channel_members_impl(mock_channel)
|
||||
|
||||
@@ -83,8 +83,7 @@ def test_get_channel_members_impl_no_status() -> None:
|
||||
def test_get_channel_members_impl_exception() -> None:
|
||||
"""Test get_channel_members_impl handles exceptions gracefully."""
|
||||
mock_channel = MagicMock()
|
||||
mock_channel.members = None
|
||||
type(mock_channel).members = property(
|
||||
type(mock_channel.guild).members = property(
|
||||
lambda self: (_ for _ in ()).throw(Exception("test"))
|
||||
)
|
||||
|
||||
@@ -119,7 +118,7 @@ def test_get_channel_members_impl_sorted_by_display_name() -> None:
|
||||
mock_member_a.status = MagicMock(value="online")
|
||||
|
||||
mock_channel = MagicMock()
|
||||
mock_channel.members = [mock_member_z, mock_member_a]
|
||||
mock_channel.guild.members = [mock_member_z, mock_member_a]
|
||||
|
||||
result = get_channel_members_impl(mock_channel)
|
||||
|
||||
@@ -138,7 +137,7 @@ def test_get_channel_members_impl_no_nick_when_same_as_display() -> None:
|
||||
mock_member.status = MagicMock(value="online")
|
||||
|
||||
mock_channel = MagicMock()
|
||||
mock_channel.members = [mock_member]
|
||||
mock_channel.guild.members = [mock_member]
|
||||
|
||||
result = get_channel_members_impl(mock_channel)
|
||||
|
||||
@@ -179,3 +178,23 @@ def test_format_member_with_all_fields() -> None:
|
||||
assert "(nickname: Al)" in result
|
||||
assert "(global name: Alice Global)" in result
|
||||
assert "[online]" in result
|
||||
|
||||
|
||||
def test_get_channel_members_impl_no_guild() -> None:
|
||||
"""Test get_channel_members_impl when channel has no guild (e.g. DM)."""
|
||||
mock_channel = MagicMock()
|
||||
mock_channel.guild = None
|
||||
|
||||
result = get_channel_members_impl(mock_channel)
|
||||
|
||||
assert "No members found in this channel." in result
|
||||
|
||||
|
||||
def test_get_channel_members_impl_guild_members_none() -> None:
|
||||
"""Test get_channel_members_impl when guild.members is None."""
|
||||
mock_channel = MagicMock()
|
||||
mock_channel.guild.members = None
|
||||
|
||||
result = get_channel_members_impl(mock_channel)
|
||||
|
||||
assert "No members found in this channel." in result
|
||||
|
||||
Reference in New Issue
Block a user