|
@@ -55,6 +55,30 @@ def test__get_transceive_mode(transceiver: cc1101.CC1101) -> None:
|
|
assert transceiver._get_transceive_mode() == _TransceiveMode.ASYNCHRONOUS_SERIAL
|
|
assert transceiver._get_transceive_mode() == _TransceiveMode.ASYNCHRONOUS_SERIAL
|
|
|
|
|
|
|
|
|
|
|
|
+@pytest.mark.parametrize(
|
|
|
|
+ ("pktctrl0_before", "mode", "pktctrl0_after"),
|
|
|
|
+ [
|
|
|
|
+ (0b01000101, _TransceiveMode.FIFO, 0b01000101),
|
|
|
|
+ (0b01000101, _TransceiveMode.SYNCHRONOUS_SERIAL, 0b01010101),
|
|
|
|
+ (0b01000101, _TransceiveMode.ASYNCHRONOUS_SERIAL, 0b01110101),
|
|
|
|
+ (0b11111111, _TransceiveMode.FIFO, 0b11001111),
|
|
|
|
+ ],
|
|
|
|
+)
|
|
|
|
+def test__set_transceive_mode(
|
|
|
|
+ transceiver: cc1101.CC1101,
|
|
|
|
+ pktctrl0_before: int,
|
|
|
|
+ mode: _TransceiveMode,
|
|
|
|
+ pktctrl0_after: int,
|
|
|
|
+) -> None:
|
|
|
|
+ xfer_mock = transceiver._spi.xfer
|
|
|
|
+ xfer_mock.return_value = [0xFF] * 2 # chip status byte
|
|
|
|
+ with unittest.mock.patch.object(
|
|
|
|
+ transceiver, "_read_single_byte", return_value=pktctrl0_before
|
|
|
|
+ ):
|
|
|
|
+ transceiver._set_transceive_mode(mode)
|
|
|
|
+ xfer_mock.assert_called_once_with([0x08 | 0x40, pktctrl0_after])
|
|
|
|
+
|
|
|
|
+
|
|
@pytest.mark.parametrize(
|
|
@pytest.mark.parametrize(
|
|
("pktctrl0_before", "pktctrl0_after"),
|
|
("pktctrl0_before", "pktctrl0_after"),
|
|
(
|
|
(
|