Create dunstctl tests
This commit is contained in:
parent
f7feb3e674
commit
180a87e0c3
2 changed files with 68 additions and 0 deletions
|
@ -27,6 +27,7 @@ class Module(core.module.Module):
|
||||||
|
|
||||||
def toggle_status(self, event):
|
def toggle_status(self, event):
|
||||||
self._paused = self.__isPaused()
|
self._paused = self.__isPaused()
|
||||||
|
|
||||||
if self._paused:
|
if self._paused:
|
||||||
util.cli.execute("dunstctl set-paused false")
|
util.cli.execute("dunstctl set-paused false")
|
||||||
else:
|
else:
|
||||||
|
|
67
tests/modules/contrib/test_dunstctl.py
Normal file
67
tests/modules/contrib/test_dunstctl.py
Normal file
|
@ -0,0 +1,67 @@
|
||||||
|
import pytest
|
||||||
|
|
||||||
|
import util.cli
|
||||||
|
import core.config
|
||||||
|
import modules.contrib.dunstctl
|
||||||
|
|
||||||
|
def build_module():
|
||||||
|
return modules.contrib.dunstctl.Module(
|
||||||
|
config=core.config.Config([]),
|
||||||
|
theme=None
|
||||||
|
)
|
||||||
|
|
||||||
|
def test_load_module():
|
||||||
|
__import__("modules.contrib.dunstctl")
|
||||||
|
|
||||||
|
def test_dunst_running(mocker):
|
||||||
|
command = mocker.patch('util.cli.execute', return_value='false')
|
||||||
|
|
||||||
|
module = build_module()
|
||||||
|
module.update()
|
||||||
|
|
||||||
|
command.assert_called_with('dunstctl is-paused')
|
||||||
|
|
||||||
|
widget = module.widget()
|
||||||
|
assert module.state(widget) == ['unmuted']
|
||||||
|
|
||||||
|
def test_dunst_paused(mocker):
|
||||||
|
command = mocker.patch('util.cli.execute', return_value='true')
|
||||||
|
|
||||||
|
module = build_module()
|
||||||
|
module.update()
|
||||||
|
|
||||||
|
command.assert_called_with('dunstctl is-paused')
|
||||||
|
|
||||||
|
widget = module.widget()
|
||||||
|
assert module.state(widget) == ['muted', 'warning']
|
||||||
|
|
||||||
|
def test_toggle_status_pause(mocker):
|
||||||
|
command = mocker.patch('util.cli.execute')
|
||||||
|
command.side_effect = ['true', 'true', None]
|
||||||
|
|
||||||
|
module = build_module()
|
||||||
|
module.toggle_status(False)
|
||||||
|
|
||||||
|
command.assert_any_call('dunstctl set-paused false')
|
||||||
|
|
||||||
|
def test_toggle_status_unpause(mocker):
|
||||||
|
command = mocker.patch('util.cli.execute')
|
||||||
|
command.side_effect = ['false', 'false', None]
|
||||||
|
|
||||||
|
module = build_module()
|
||||||
|
module.toggle_status(False)
|
||||||
|
|
||||||
|
command.assert_called_with('dunstctl set-paused true')
|
||||||
|
|
||||||
|
def test_input_register(mocker):
|
||||||
|
command = mocker.patch('util.cli.execute')
|
||||||
|
input_register = mocker.patch('core.input.register')
|
||||||
|
|
||||||
|
module = build_module()
|
||||||
|
|
||||||
|
input_register.assert_called_with(
|
||||||
|
module,
|
||||||
|
button=core.input.LEFT_MOUSE,
|
||||||
|
cmd=module.toggle_status
|
||||||
|
)
|
||||||
|
|
Loading…
Reference in a new issue