示例#1
0
 def test_handleStateChangeSuccess(self, gpioInputMock, gpioRemoveMock,
                                   gpioAddMock, notifyMock):
     gpioInputMock.return_value = State.OPEN
     sensor = Door(DoorTest.name, DoorTest.pin)
     sensor.callback = self.dummyCallback
     sensor._handleStateChange(23)
     notifyMock.assert_called_with(self.dummyCallback)
示例#2
0
 def getGpioSensor(sensorConfig):
     """ Initialization of factory
     
     Args:
         sensorConfig (dict): subsection of configuration pertinent to this sensor
         
     Returns:
         GpioSensor : GpioSensor object
     """
     if (sensorConfig['type'] == Type.DOOR):
         sensor = Door(sensorConfig['name'], sensorConfig['pin'])
         return sensor
     else:
         logger.error("GpioSensor type {} not found".format(
             sensorConfig['type']))
         raise ValueError("GpioSensor type {} not found".format(
             sensorConfig['type']))
示例#3
0
 def test_disableStateChangeNotification(self, gpioRemoveMock):
     sensor = Door(DoorTest.name, DoorTest.pin)
     sensor.callback = self.dummyCallback
     sensor.disableStateChangeNotification()
     self.assertEqual(sensor.callback, None)
示例#4
0
 def test_handleStateChangeNoCallback(self, gpioInputMock):
     gpioInputMock.return_value = State.OPEN
     sensor = Door(DoorTest.name, DoorTest.pin)
     sensor.callback = None
     with self.assertRaises(ValueError):
         sensor._handleStateChange(23)
示例#5
0
 def test_notifyOnStateChangeOpen(self, gpioInputMock, gpioRemoveMock,
                                  gpioAddMock):
     gpioInputMock.return_value = State.CLOSED
     sensor = Door(DoorTest.name, DoorTest.pin)
     sensor.notifyOnStateChange(self.dummyCallback)
     self.assertEqual(sensor.callback, self.dummyCallback)
示例#6
0
 def test_notifyOnStateChangeNoCallback(self):
     sensor = Door(DoorTest.name, DoorTest.pin)
     with self.assertRaises(ValueError):
         sensor.notifyOnStateChange(None)
示例#7
0
 def test_getStateClosed(self, gpioMock):
     gpioMock.return_value = State.CLOSED
     sensor = Door(DoorTest.name, DoorTest.pin)
     self.assertEqual(sensor.getState(), State.CLOSED)
示例#8
0
 def test_getStateOpen(self, gpioMock):
     gpioMock.return_value = State.OPEN
     sensor = Door(DoorTest.name, DoorTest.pin)
     self.assertEqual(sensor.getState(), State.OPEN)