Skip to content

Commit d6136bf

Browse files
committed
refactor methods to test all LEDs
1 parent f779f88 commit d6136bf

File tree

1 file changed

+38
-10
lines changed

1 file changed

+38
-10
lines changed

test/test_led.py

Lines changed: 38 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,50 @@
11
import pytest
22
import os
3+
import errno
34

45
import Adafruit_BBIO.GPIO as GPIO
56

67
def teardown_module(module):
78
GPIO.cleanup()
89

910
class TestLED:
10-
def test_brightness_high(self):
11-
GPIO.setup("USR0", GPIO.OUT)
12-
GPIO.output("USR0", GPIO.HIGH)
13-
value = open('/sys/class/leds/beaglebone:green:usr0/brightness').read()
14-
assert int(value) > 0
11+
def set_brightness(self, state, led, name):
12+
GPIO.setup(led, GPIO.OUT)
13+
GPIO.output(led, state)
14+
15+
path = "/sys/class/leds/beaglebone:green:{0}/brightness".format(led.lower())
16+
value = self.read_led_file(path)
17+
18+
if value < 0:
19+
path = "/sys/class/leds/beaglebone:green:{0}/brightness".format(name)
20+
value = self.read_led_file(path)
21+
22+
if state == 1:
23+
assert int(value) > 0
24+
else:
25+
assert int(value) == 0
1526
GPIO.cleanup()
1627

28+
def read_led_file(self, path):
29+
try:
30+
return open(path).read()
31+
except IOError, e:
32+
if e.errno == errno.ENOENT:
33+
return -1
34+
35+
def set_all_leds(self, state):
36+
test_leds = { "USR0": "heartbeat", \
37+
"USR1": "mmc0", \
38+
"USR2": "cpu0", \
39+
"USR3": "mmc1" }
40+
for led, name in test_leds.iteritems():
41+
self.set_brightness(state, led, name)
42+
GPIO.cleanup()
43+
44+
def test_brightness_high(self):
45+
self.set_all_leds(GPIO.HIGH)
46+
1747
def test_brightness_low(self):
18-
GPIO.setup("USR0", GPIO.OUT)
19-
GPIO.output("USR0", GPIO.LOW)
20-
value = open('/sys/class/leds/beaglebone:green:usr0/brightness').read()
21-
assert int(value) == 0
22-
GPIO.cleanup()
48+
self.set_all_leds(GPIO.LOW)
49+
50+

0 commit comments

Comments
 (0)