1
0
mirror of https://github.com/xtacocorex/CHIP_IO synced 2025-07-19 20:33:21 +00:00
Files
CHIP_IO/test/test_gpio_output.py

48 lines
1.3 KiB
Python

import pytest
import CHIP_IO.GPIO as GPIO
def teardown_module(module):
GPIO.cleanup()
class TestGPIOOutput:
def test_output_high(self):
GPIO.setup("CSID6", GPIO.OUT)
GPIO.output("CSID6", GPIO.HIGH)
value = open('/sys/class/gpio/gpio138/value').read()
assert int(value)
GPIO.cleanup()
def test_output_low(self):
GPIO.setup("CSID6", GPIO.OUT)
GPIO.output("CSID6", GPIO.LOW)
value = open('/sys/class/gpio/gpio138/value').read()
assert not int(value)
GPIO.cleanup()
def test_direction_readback(self):
GPIO.setup("CSID6", GPIO.OUT)
direction = GPIO.gpio_function("CSID6")
assert direction == GPIO.OUT
GPIO.cleanup()
def test_output_greater_than_one(self):
GPIO.setup("CSID6", GPIO.OUT)
GPIO.output("CSID6", 2)
value = open('/sys/class/gpio/gpio138/value').read()
assert int(value)
GPIO.cleanup()
def test_output_of_pin_not_setup(self):
with pytest.raises(RuntimeError):
GPIO.output("CSID7", GPIO.LOW)
GPIO.cleanup()
def test_output_setup_as_input(self):
GPIO.setup("CSID6", GPIO.IN)
with pytest.raises(RuntimeError):
GPIO.output("CSID6", GPIO.LOW)
GPIO.cleanup()