def test_pin_mode_can_only_be_done_by_registered_component( test_arduino: Arduino, ) -> None: test_arduino.pin_mode(0, INPUT) test_arduino.register_component("component_id_1", pins=(Pin(0), )) test_arduino.pin_mode(0, INPUT, token="component_id_1") with pytest.raises(ProtectedPinError): test_arduino.pin_mode(0, INPUT) with pytest.raises(ProtectedPinError): test_arduino.pin_mode(0, INPUT, token="component_id_2")
def test_pin_mode_with_reserved_pin(test_arduino: Arduino) -> None: with pytest.raises(PinIsReservedForSerialCommsError): test_arduino.pin_mode(4, OUTPUT)
def test_pin_mode_with_pin_no_out_of_range(test_arduino: Arduino) -> None: with pytest.raises(PinDoesNotExistError): test_arduino.pin_mode(6, OUTPUT)
def test_pin_mode_with_incorrect_mode(test_arduino: Arduino) -> None: with pytest.raises(ValueError): test_arduino.pin_mode(0, HIGH) # type: ignore
def test_pin_mode_with_valid_args(test_arduino: Arduino) -> None: test_arduino.pin_mode(0, INPUT)