+            print("Winking LED...")
+            for count in range(2):
+                led.value = not(led.value)
+                sleep(0.5)
+                led.value = not(led.value)
+                sleep(0.5)
+            self.assertTrue(yes_no("Did LED wink twice"))
+
+    def test_button_pull_up(self):
+        print()
+        """Pull-up button configured and detected"""
+        with DigitalInOut(default_pin) as button:
+            #button.direction = Direction.INPUT # implied
+            try:
+                button.pull = Pull.UP
+            except NotImplementedError as e:
+                print()
+                print(e)
+                return  # test trivially passed
+            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()
+        """Pull-down button configured and detected"""
+        with DigitalInOut(default_pin) as button:
+            #button.direction = Direction.INPUT # implied
+            try:
+                button.pull = Pull.DOWN
+            except NotImplementedError as e:
+                print(e)
+                return  # test trivially passed
+            if (yes_no("Is Button wired from {} to VCC".format(default_pin))):
+                self.assertTrue(button.value == False)
+                self.assertTrue(await_true("button pressed", lambda: button.value == True))
+