test(voice): update existing voice_mode tests for platform-prefixed keys
Follow-up to 40164ba1. - _handle_voice_channel_join/leave now use event.source.platform instead of hardcoded Platform.DISCORD (consistent with other voice handlers). - Update tests/gateway/test_voice_command.py to use 'platform:chat_id' keys matching the new _voice_key() format. - Add platform isolation regression test for the bug in #12542. - Drop decorative test_legacy_key_collision_bug (the fix makes the collision impossible; the test mutated a single key twice, not a real scenario). - Adapter mocks in _sync_voice_mode_state_to_adapter tests now set adapter.platform = Platform.* (required by new isinstance check).
This commit is contained in:
@@ -5962,7 +5962,7 @@ class GatewayRunner:
|
||||
adapter._voice_text_channels[guild_id] = int(event.source.chat_id)
|
||||
if hasattr(adapter, "_voice_sources"):
|
||||
adapter._voice_sources[guild_id] = event.source.to_dict()
|
||||
self._voice_mode[self._voice_key(Platform.DISCORD, event.source.chat_id)] = "all"
|
||||
self._voice_mode[self._voice_key(event.source.platform, event.source.chat_id)] = "all"
|
||||
self._save_voice_modes()
|
||||
self._set_adapter_auto_tts_disabled(adapter, event.source.chat_id, disabled=False)
|
||||
return (
|
||||
@@ -5989,7 +5989,7 @@ class GatewayRunner:
|
||||
except Exception as e:
|
||||
logger.warning("Error leaving voice channel: %s", e)
|
||||
# Always clean up state even if leave raised an exception
|
||||
self._voice_mode[self._voice_key(Platform.DISCORD, event.source.chat_id)] = "off"
|
||||
self._voice_mode[self._voice_key(event.source.platform, event.source.chat_id)] = "off"
|
||||
self._save_voice_modes()
|
||||
self._set_adapter_auto_tts_disabled(adapter, event.source.chat_id, disabled=True)
|
||||
if hasattr(adapter, "_voice_input_callback"):
|
||||
|
||||
Reference in New Issue
Block a user