Skip to content

Commit

Permalink
tests: Add hidpp10 tests
Browse files Browse the repository at this point in the history
Related #1097
  • Loading branch information
MattHag committed Feb 29, 2024
1 parent a38d193 commit 6c8661f
Show file tree
Hide file tree
Showing 2 changed files with 43 additions and 1 deletion.
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ def _data_files():
"report-descriptor": ["hid-parser"],
"desktop-notifications": ["Notify (>= 0.7)"],
"git-commit": ["python-git-info"],
"test": ["pytest", "pytest-cov"],
"test": ["pytest", "pytest-mock", "pytest-cov"],
"dev": ["ruff"],
},
package_dir={"": "lib"},
Expand Down
42 changes: 42 additions & 0 deletions tests/logitech_receiver/test_hidpp10.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
import pytest

from logitech_receiver import hidpp10, hidpp10_constants


class FakeDevice:
kind = "fake"
online = True
registers = [hidpp10_constants.REGISTERS.three_leds]

def request(self, *params):
return b"fake request"

def read_register(self, register_number, *params):
return "fake register"


@pytest.fixture
def setup_hidpp10():
device = FakeDevice()
hid = hidpp10.Hidpp10()

yield device, hid


def test_hidpp10(setup_hidpp10):
device, hid = setup_hidpp10

firmwares = hid.get_firmware(device)

assert len(firmwares) == 3
for firmware in firmwares:
assert firmware.kind in ["Firmware", "Bootloader", "Other"]


def test_set_3leds(setup_hidpp10, mocker):
device, hid = setup_hidpp10
spy_write_register = mocker.spy(hidpp10, "write_register")

hid.set_3leds(device)

spy_write_register.assert_called_once_with(device, hidpp10_constants.REGISTERS.three_leds, 17, 17)

0 comments on commit 6c8661f

Please sign in to comment.