mirror of
https://github.com/xtacocorex/CHIP_IO
synced 2025-07-20 12:53:22 +00:00
73 lines
2.4 KiB
Python
73 lines
2.4 KiB
Python
import pytest
|
|
import os
|
|
|
|
import CHIP_IO.GPIO as GPIO
|
|
|
|
def teardown_module(module):
|
|
GPIO.cleanup()
|
|
|
|
class TestSetup:
|
|
def test_setup_output_key(self):
|
|
GPIO.setup("U14_37", GPIO.OUT)
|
|
assert os.path.exists('/sys/class/gpio/gpio138')
|
|
direction = open('/sys/class/gpio/gpio138/direction').read()
|
|
assert direction == 'out\n'
|
|
GPIO.cleanup()
|
|
|
|
def test_setup_output_name(self):
|
|
GPIO.setup("CSID6", GPIO.OUT)
|
|
assert os.path.exists('/sys/class/gpio/gpio138')
|
|
direction = open('/sys/class/gpio/gpio138/direction').read()
|
|
assert direction == 'out\n'
|
|
GPIO.cleanup()
|
|
|
|
def test_setup_input_key(self):
|
|
GPIO.setup("U14_37", GPIO.IN)
|
|
assert os.path.exists('/sys/class/gpio/gpio138')
|
|
direction = open('/sys/class/gpio/gpio138/direction').read()
|
|
assert direction == 'in\n'
|
|
GPIO.cleanup()
|
|
|
|
def test_setup_input_name(self):
|
|
GPIO.setup("CSID6", GPIO.IN)
|
|
assert os.path.exists('/sys/class/gpio/gpio138')
|
|
direction = open('/sys/class/gpio/gpio138/direction').read()
|
|
assert direction == 'in\n'
|
|
GPIO.cleanup()
|
|
|
|
def test_setup_input_pull_up(self):
|
|
GPIO.setup("U14_37", GPIO.IN, pull_up_down=GPIO.PUD_UP)
|
|
assert os.path.exists('/sys/class/gpio/gpio138')
|
|
direction = open('/sys/class/gpio/gpio138/direction').read()
|
|
assert direction == 'in\n'
|
|
GPIO.cleanup()
|
|
|
|
def test_setup_input_pull_down(self):
|
|
GPIO.setup("U14_37", GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
|
|
assert os.path.exists('/sys/class/gpio/gpio138')
|
|
direction = open('/sys/class/gpio/gpio138/direction').read()
|
|
assert direction == 'in\n'
|
|
GPIO.cleanup()
|
|
|
|
def test_setup_cleanup(self):
|
|
GPIO.setup("U14_37", GPIO.OUT)
|
|
assert os.path.exists('/sys/class/gpio/gpio138')
|
|
GPIO.cleanup()
|
|
assert not os.path.exists('/sys/class/gpio/gpio138')
|
|
|
|
def test_setup_failed_type_error(self):
|
|
with pytest.raises(TypeError):
|
|
GPIO.setup("U14_37", "WEIRD")
|
|
GPIO.cleanup()
|
|
|
|
def test_setup_failed_value_error(self):
|
|
with pytest.raises(ValueError):
|
|
GPIO.setup("U14_37", 3)
|
|
GPIO.cleanup()
|
|
|
|
def test_setup_expanded_gpio(self):
|
|
GPIO.setup("XIO-P1", GPIO.OUT)
|
|
assert os.path.exists('/sys/class/gpio/gpio409')
|
|
GPIO.cleanup()
|
|
assert not os.path.exists('/sys/class/gpio/gpio409')
|