]> Repositories - hackapet/Adafruit_Blinka.git/blobdiff - python/testing/implementation/all/digitalio.py
Use boolean as canonical value attribute
[hackapet/Adafruit_Blinka.git] / python / testing / implementation / all / digitalio.py
index 87a4e1f872a972f6364e6ba5a2a6b2ed82437a81..4f5ab2eb33d34f80f0660011bf7f7aa12ded1bf1 100644 (file)
@@ -1,6 +1,6 @@
 import unittest
 from testing import yes_no, await_true
-from testing.board import led_pin, default_pin, led_hardwired
+from testing.board import led_pin, default_pin, led_hardwired, led_inverted
 import digitalio
 from digitalio import * # TODO refactor below for wildcard import
 
@@ -18,7 +18,7 @@ class TestDigitalInOut(unittest.TestCase):
         with digitalio.DigitalInOut(default_pin) as dio:
             dio.switch_to_output()
             self.assertEqual(dio.direction, digitalio.Direction.OUTPUT)
-            self.assertEqual(dio.value, 0)
+            self.assertEqual(dio.value, False)
             self.assertEqual(dio.drive_mode, digitalio.DriveMode.PUSH_PULL)
 
     def test_switch_to_input(self):
@@ -41,12 +41,13 @@ class TestDigitalInOutInteractive(unittest.TestCase):
         with digitalio.DigitalInOut(led_pin) as led:
             led.direction = digitalio.Direction.OUTPUT
             # should now be OUT, PUSH_PULL, value=0, and LED should light
+            led.value = False if led_inverted else True
             self.assertTrue(yes_no("Is LED lit"))
             print("Winking LED...")
             for count in range(2):
-                led.value = True
+                led.value = not(led.value)
                 sleep(0.5)
-                led.value = False
+                led.value = not(led.value)
                 sleep(0.5)
             self.assertTrue(yes_no("Did LED wink twice"))
 
@@ -61,9 +62,9 @@ class TestDigitalInOutInteractive(unittest.TestCase):
                 print()
                 print(e)
                 return  # test trivially passed
-            if yes_no("Is Button wired to {} to GND".format(default_pin)):
-                self.assertTrue(button.value == 1)
-                self.assertTrue(await_true("button pressed", lambda: button.value == 0))
+            if yes_no("Is Button wired from {} to GND".format(default_pin)):
+                self.assertTrue(button.value == True)
+                self.assertTrue(await_true("button pressed", lambda: button.value == False))
 
     def test_button_pull_down(self):
         print()
@@ -76,6 +77,6 @@ class TestDigitalInOutInteractive(unittest.TestCase):
                 print(e)
                 return  # test trivially passed
             if (yes_no("Is Button wired from {} to VCC".format(default_pin))):
-                self.assertTrue(button.value == 0)
-                self.assertTrue(await_true("button pressed", lambda: button.value == 1))
+                self.assertTrue(button.value == False)
+                self.assertTrue(await_true("button pressed", lambda: button.value == True))