def setUp(self):
        self.zone1 = Zone.createExternalZone('porch').addDevice(Door(ITEMS[0]))
        self.zone2 = Zone.createExternalZone('garage').addDevice(Door(
            ITEMS[1]))

        AlertManager._setTestMode(True)
        AlertManager.reset()
Beispiel #2
0
 def testOnAction_zoneIsExternal_returnsFalse(self):
     zone = Zone.createExternalZone('porch').addDevice(
         TemperatureSensor(ITEMS[0]))
     eventInfo = EventInfo(ZoneEvent.TEMPERATURE_CHANGED, ITEMS[0], zone,
                           None, self.getMockedEventDispatcher())
     value = AlertOnTemperatureOutOfRange().onAction(eventInfo)
     self.assertFalse(value)
Beispiel #3
0
    def createTestData(self, excludedDevices=[], extraIncludedDevices=[]):
        '''
        :return: a list of two zones, the mocked zone manager, and the event dispatcher
        :rtype: list
        '''

        self.partition.armAway(self.getMockedEventDispatcher())

        porch = Zone.createExternalZone('porch').addDevice(self.partition)
        greatRoom = Zone("GR", [self.audioSink], Level.FIRST_FLOOR)

        for d in excludedDevices:
            if porch.hasDevice(d):
                porch = porch.removeDevice(d)

            if greatRoom.hasDevice(d):
                greatRoom = greatRoom.removeDevice(d)

        for d in extraIncludedDevices:
            greatRoom = greatRoom.addDevice(d)

        zm = MockedZoneManager([porch, greatRoom])

        eventInfo = EventInfo(ZoneEvent.MOTION, ITEMS[0], porch, zm,
                              self.getMockedEventDispatcher())

        return [porch, greatRoom, zm, eventInfo]
    def setUp(self):
        super(ArmAfterFrontDoorClosedTest, self).setUp()

        self.alarmPartition = AlarmPartition(ITEMS[2], ITEMS[3])
        self.externalMotionSensor = MotionSensor(ITEMS[4])
        self.internalMotionSensor = MotionSensor(ITEMS[5])

        self.zone1 = Zone.createExternalZone('porch') \
            .addDevice(Door(ITEMS[0])) \
            .addDevice(self.externalMotionSensor)

        self.zone2 = Zone('foyer', [self.internalMotionSensor, self.alarmPartition])

        self.mockZoneManager= MockZoneManager(self.alarmPartition,
                [self.zone1, self.zone2])

        AlertManager._setTestMode(True)
        AlertManager.reset()
Beispiel #5
0
 def testCreateExternalZone_validParams_returnsAnExternalZone(self):
     zoneName = 'bed room'
     zone = Zone.createExternalZone(zoneName)
     self.assertEqual(zoneName, zone.getName())
     self.assertTrue(zone.isExternal())
 def testOnAction_zoneIsExternal_returnsFalse(self):
     zone = Zone.createExternalZone('porch').addDevice(HumiditySensor(ITEMS[0]))
     eventInfo = EventInfo(ZoneEvent.HUMIDITY_CHANGED, ITEMS[0], zone,
             None, self.getMockedEventDispatcher())
     value = AlertOnHumidityOutOfRange().onAction(eventInfo)
     self.assertFalse(value)
 def testOnAction_externalZoneWithNoDoor_returnsFalseAndTimerStarted(self):
     eventInfo = EventInfo(ZoneEvent.CONTACT_OPEN, ITEMS[0],
                           Zone.createExternalZone('aZone'), None,
                           self.getMockedEventDispatcher())
     value = AlertOnExternalDoorLeftOpen().onAction(eventInfo)
     self.assertFalse(value)