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 testRemoveDevice_validDevice_deviceRemoved(self): zone = Zone('ff', [self.light]) self.assertEqual(1, len(zone.getDevices())) zone = zone.removeDevice(self.light) self.assertEqual(0, len(zone.getDevices()))