]> Repositories - Adafruit_Blinka-hackapet.git/blob - python/testing/implementation/all/digitalio.py
Added interactive await behaviour for real-world triggers. Workaround for stack-busti...
[Adafruit_Blinka-hackapet.git] / python / testing / implementation / all / digitalio.py
1 import unittest
2 from testing import yes_no
3 from testing.board import led_pin,default_pin
4
5 class TestDigitalInOut(unittest.TestCase):
6
7
8     def test_default(self):
9         import digitalio
10         """Check that a DigitalInOut is input with no pull when constructed"""
11         with digitalio.DigitalInOut(default_pin) as dio:
12             self.assertEqual(dio.direction, digitalio.Direction.INPUT)
13             self.assertEqual(dio.pull, None)
14
15
16     def test_blink(self):
17         import digitalio
18         from agnostic import time
19         self.assertTrue(yes_no("Is LED wired to {}".format(led_pin)))
20         with digitalio.DigitalInOut(led_pin) as led:
21             led.direction = digitalio.Direction.OUTPUT
22             # should now be OUT, PUSH_PULL, value=0, and LED should light
23             self.assertTrue(yes_no("Is LED lit"))
24             for count in range(3):
25                 led.value = True
26                 time.sleep(1.0)
27                 led.value = False
28                 time.sleep(1.0)
29             self.assertTrue(yes_no("Did LED wink thrice"))