def test_mock_pin_edges():
    pin = MockPin(2)
    assert pin.when_changed is None
    fired = Event()
    pin.function = 'input'
    pin.edges = 'both'
    assert pin.edges == 'both'
    pin.drive_low()
    assert not pin.state
    def changed():
        fired.set()
    pin.when_changed = changed
    pin.drive_high()
    assert pin.state
    assert fired.wait(0)
    fired.clear()
    pin.edges = 'falling'
    pin.drive_low()
    assert not pin.state
    assert fired.wait(0)
    fired.clear()
    pin.drive_high()
    assert pin.state
    assert not fired.wait(0)
    assert pin.edges == 'falling'
def test_mock_pin_edges():
    pin = MockPin(5)
    assert pin.when_changed is None
    fired = Event()
    pin.function = 'input'
    pin.edges = 'both'
    assert pin.edges == 'both'
    pin.drive_low()
    assert not pin.state
    def changed():
        fired.set()
    pin.when_changed = changed
    pin.drive_high()
    assert pin.state
    assert fired.wait(0)
    fired.clear()
    pin.edges = 'falling'
    pin.drive_low()
    assert not pin.state
    assert fired.wait(0)
    fired.clear()
    pin.drive_high()
    assert pin.state
    assert not fired.wait(0)
    assert pin.edges == 'falling'
Beispiel #3
0
def test_mock_pin_edges():
    pin = MockPin(2)
    assert pin.when_changed is None
    fired = Event()
    pin.function = "input"
    pin.edges = "both"
    assert pin.edges == "both"
    pin.drive_low()
    assert not pin.state

    def changed():
        fired.set()

    pin.when_changed = changed
    pin.drive_high()
    assert pin.state
    assert fired.wait(0)
    fired.clear()
    pin.edges = "falling"
    pin.drive_low()
    assert not pin.state
    assert fired.wait(0)
    fired.clear()
    pin.drive_high()
    assert pin.state
    assert not fired.wait(0)
    assert pin.edges == "falling"
def test_mock_pin_pull():
    pin = MockPin(2)
    pin.function = 'input'
    assert pin.pull == 'floating'
    pin.pull = 'up'
    assert pin.state
    pin.pull = 'down'
    assert not pin.state
def test_mock_pin_pull():
    pin = MockPin(4)
    pin.function = 'input'
    assert pin.pull == 'floating'
    pin.pull = 'up'
    assert pin.state
    pin.pull = 'down'
    assert not pin.state
Beispiel #6
0
def test_mock_pin_pull():
    pin = MockPin(2)
    pin.function = "input"
    assert pin.pull == "floating"
    pin.pull = "up"
    assert pin.state
    pin.pull = "down"
    assert not pin.state
def test_mock_pin_state():
    pin = MockPin(2)
    with pytest.raises(PinSetInput):
        pin.state = 1
    pin.function = 'output'
    assert pin.state == 0
    pin.state = 1
    assert pin.state == 1
    pin.state = 0
    assert pin.state == 0
    pin.state = 0.5
    assert pin.state == 1
Beispiel #8
0
def test_mock_pin_state():
    pin = MockPin(2)
    with pytest.raises(PinSetInput):
        pin.state = 1
    pin.function = "output"
    assert pin.state == 0
    pin.state = 1
    assert pin.state == 1
    pin.state = 0
    assert pin.state == 0
    pin.state = 0.5
    assert pin.state == 1
def test_output_write_silly():
    pin = MockPin(2)
    with OutputDevice(pin) as device:
        pin.function = 'input'
        with pytest.raises(AttributeError):
            device.on()
def test_output_write_silly():
    pin = MockPin(2)
    with OutputDevice(pin) as device:
        pin.function = 'input'
        with pytest.raises(AttributeError):
            device.on()