refactor: remove legacy volume_boost references in favor of generalized player effects API

This commit is contained in:
mmacierzanka committed 2026-09-11 01:57:26 +02:00
1 parent a12b726648
commit 39403b8238
12 files changed
+27 -112

No files matched your search

+17 -27
View File
@@ -7,7 +7,6 @@ import tempfile
import unittest
from tests.fakes import FakeTrack, build_player
from zyrarbot.music.guild_music_state import VOLUME_BOOST_MULTIPLIER
from zyrarbot.music.loop_mode import LoopMode
from zyrarbot.storage.queue_repository import QueueRepository
@@ -236,36 +235,27 @@ class MusicPlayerQueueTest(unittest.IsolatedAsyncioTestCase):
self.assertEqual(track.volume, 0.25)
async def test_volume_boost_multiplies_effective_volume_by_multiplier(self):
async def test_effects_management_in_player(self):
player, _ = build_player()
player.set_volume(GUILD, 0.2)
player.set_volume_boost(GUILD, True)
self.assertFalse(player.is_effect_active(GUILD, "distortion"))
self.assertEqual(player.state(GUILD).volume, 0.2)
self.assertAlmostEqual(
player.state(GUILD).effective_volume, 0.2 * VOLUME_BOOST_MULTIPLIER
)
track = FakeTrack("boosted")
await player.enqueue(GUILD, track)
self.assertAlmostEqual(track.volume, 0.2 * VOLUME_BOOST_MULTIPLIER)
player.set_volume(GUILD, 1.0)
self.assertAlmostEqual(
player.state(GUILD).effective_volume, 1.0 * VOLUME_BOOST_MULTIPLIER
)
async def test_toggle_volume_boost(self):
player, _ = build_player()
self.assertFalse(player.state(GUILD).volume_boost)
res = player.toggle_volume_boost(GUILD)
# Enable effect
res = player.set_effect(GUILD, "distortion", True)
self.assertTrue(res)
self.assertTrue(player.state(GUILD).volume_boost)
self.assertTrue(player.is_effect_active(GUILD, "distortion"))
self.assertIn("distortion", player.state(GUILD).active_effects)
# Toggle effect off
toggled = player.toggle_effect(GUILD, "distortion")
self.assertFalse(toggled)
self.assertFalse(player.is_effect_active(GUILD, "distortion"))
self.assertNotIn("distortion", player.state(GUILD).active_effects)
# Multiple simultaneous effects
player.set_effect(GUILD, "distortion", True)
player.set_effect(GUILD, "fourth_density", True)
self.assertEqual(player.state(GUILD).active_effects, {"distortion", "fourth_density"})
res2 = player.toggle_volume_boost(GUILD)
self.assertFalse(res2)
self.assertFalse(player.state(GUILD).volume_boost)
async def test_default_plays_are_applied_per_guild(self):
player, _ = build_player()