diff --git a/emmental/header/volume.py b/emmental/header/volume.py index e00ab62..de2bcd7 100644 --- a/emmental/header/volume.py +++ b/emmental/header/volume.py @@ -41,17 +41,19 @@ class VolumeRow(Gtk.ListBoxRow): self._box.append(self._increment) self.set_child(self._box) - self._decrement.connect("clicked", self.__decrement) + self._decrement.connect("clicked", self.decrement) self._scale.connect("value-changed", self.__value_changed) - self._increment.connect("clicked", self.__increment) + self._increment.connect("clicked", self.increment) self.bind_property("volume", self._adjustment, "value", GObject.BindingFlags.BIDIRECTIONAL) - def __decrement(self, button: Gtk.Button) -> None: + def decrement(self, button: Gtk.Button | None = None) -> None: + """Decrease the volume by STEP_SIZE.""" self._scale.set_value(self._scale.get_value() - STEP_SIZE) - def __increment(self, button: Gtk.Button) -> None: + def increment(self, button: Gtk.Button | None = None) -> None: + """Increase the volume by STEP_SIZE.""" self._scale.set_value(self._scale.get_value() + STEP_SIZE) def __value_changed(self, range: Gtk.Range) -> None: diff --git a/tests/header/test_volume.py b/tests/header/test_volume.py index a0d170f..bd8ac97 100644 --- a/tests/header/test_volume.py +++ b/tests/header/test_volume.py @@ -57,6 +57,11 @@ class TestVolumeRow(unittest.TestCase): self.assertAlmostEqual(self.vol._scale.get_value(), 0.95) self.assertAlmostEqual(self.value.value, 0.95) + self.vol.decrement() + self.assertAlmostEqual(self.vol.volume, 0.90) + self.assertAlmostEqual(self.vol._scale.get_value(), 0.90) + self.assertAlmostEqual(self.value.value, 0.90) + def test_scale(self): """Check that the volume slider has been set up properly.""" self.assertIsInstance(self.vol._adjustment, Gtk.Adjustment) @@ -103,6 +108,11 @@ class TestVolumeRow(unittest.TestCase): self.assertAlmostEqual(self.vol._scale.get_value(), 0.95) self.assertAlmostEqual(self.value.value, 0.95) + self.vol.increment() + self.assertAlmostEqual(self.vol.volume, 1.0) + self.assertAlmostEqual(self.vol._scale.get_value(), 1.0) + self.assertAlmostEqual(self.value.value, 1.0) + def test_format_value(self): """Check that the scale value is formatted correctly.""" format_value = emmental.header.volume.format_value_func