def testKramer602Listener(self): port = MockSerialPort() port.read = MagicMock(return_value=[chr(0x28), chr(0x81)]) # Notification that input 1 sent to output 1 k = Kramer602("Test", port) c = Controller() c.addDevice(k) kl = Kramer602Listener("TestListener", k.deviceID, c, machineNumber=1) dispatcher = NullDispatcher() dispatcher.updateOutputMappings = MagicMock() kl.registerDispatcher(dispatcher) kl.start() threading.Event().wait(0.1) kl.stop() dispatcher.updateOutputMappings.assert_called_with({'Test': {1: 1}}) port = MockSerialPort() port.read = MagicMock(return_value=[chr(0x28), chr(0x8A)]) # Notification that input 5 sent to output 2 k = Kramer602("Test", port) c = Controller() c.addDevice(k) kl = Kramer602Listener("TestListener", k.deviceID, c, machineNumber=1) dispatcher = NullDispatcher() dispatcher.updateOutputMappings = MagicMock() kl.registerDispatcher(dispatcher) kl.start() threading.Event().wait(0.1) kl.stop() dispatcher.updateOutputMappings.assert_called_with({'Test': {2: 5}})
def testGetPosition(self): port = MockSerialPort() cam = VISCACamera("Test Camera", port, 1) port.setDataForRead([chr(0x10), chr(0x50), chr(0x01), chr(0x02), chr(0x03), chr(0x04), chr(0x0A), chr(0x0B), chr(0x0C), chr(0x0D), chr(0xFF)]) pos = cam.getPosition() self.assertEqual(pos.pan, 0x1234) self.assertEqual(pos.tilt, 0xABCD) self.assertEqual(pos.zoom, 0x1234) # This is a bit of a hack since getPosition() results in two calls to port.read()
def testInline3808(self): port = MockSerialPort() inline = Inline3808("Test", port) inline.initialise() self.assertEqual(list("[CNF290000]"), port.bytes) port.clear() inline.sendInputToOutput(3, 2) self.assertEqual(list("[PT1O02I03]"), port.bytes)
def testKramer602(self): port = MockSerialPort() k602 = Kramer602("Test", port) k602.initialise() self.assertBytesEqual([0x0, 0xA1], port.bytes) port.clear() k602.sendInputToOutput(2, 1) self.assertBytesEqual([0x0, 0x83], port.bytes) port.clear() k602.sendInputToOutput(1, 2) self.assertBytesEqual([0x0, 0x82], port.bytes)
def testKramerVP88(self): port = MockSerialPort() vp88 = KramerVP88("Test", port) vp88.initialise() self.assertBytesEqual([0x05, 0x80, 0x81, 0x81, 0x05, 0x80, 0x82, 0x81, 0x05, 0x80, 0x83, 0x81, 0x05, 0x80, 0x84, 0x81, 0x05, 0x80, 0x85, 0x81, 0x05, 0x80, 0x86, 0x81, 0x05, 0x80, 0x87, 0x81, 0x05, 0x80, 0x88, 0x81], port.bytes) port.clear() vp88.sendInputToOutput(2, 8) self.assertBytesEqual([0x01, 0x82, 0x88, 0x81], port.bytes)
def testKMtronicSerialRelayCard(self): port = MockSerialPort() card = KMtronicSerialRelayCard("Test", port) card.initialise() self.assertEqual([], port.bytes) card.on(1) self.assertEqual(['\xFF', '\x01', '\x01'], port.bytes) port.clear() channel = card.createDevice("channel", 2) channel.on() self.assertEqual(['\xFF', '\x02', '\x01'], port.bytes) port.clear() channel.off() self.assertEqual(['\xFF', '\x02', '\x00'], port.bytes)
def testUnisonDevice(self): port = MockSerialPort() unison = UnisonDevice("Test", port) activate = unison.activate("Test.Test.Preset1") self.assertBytesEqual([0xEE, 25, 0, 0, 0x40, ord('T'), ord('e'), ord('s'), ord('t'), ord('.'), ord('T'), ord('e'), ord('s'), ord('t'), ord('.'), ord('P'), ord('r'), ord('e'), ord('s'), ord('e'), ord('t'), ord('1'), ord('.'), ord('A'), ord('C'), ord('T'), ord('I'), 0, 0], port.bytes) self.assertEquals(29, activate) port.clear() deact = unison.deactivate("Test.Test.Preset2") self.assertBytesEqual([0xEE, 25, 0, 0, 0x40, ord('T'), ord('e'), ord('s'), ord('t'), ord('.'), ord('T'), ord('e'), ord('s'), ord('t'), ord('.'), ord('P'), ord('r'), ord('e'), ord('s'), ord('e'), ord('t'), ord('2'), ord('.'), ord('D'), ord('A'), ord('C'), ord('T'), 0, 0], port.bytes) self.assertEquals(29, deact)
def testKramerVP703(self): port = MockSerialPort() vp703 = KramerVP703("Test", port) vp703.initialise() self.assertEqual(list(b"Overscan = 1\r\n"), port.bytes) port.clear() vp703.overscanOff() self.assertEqual(list(b"Overscan = 0\r\n"), port.bytes) port.clear() vp703.freeze() self.assertEqual(list(b"Image Freeze = 1\r\n"), port.bytes) port.clear() vp703.unfreeze() self.assertEqual(list(b"Image Freeze = 0\r\n"), port.bytes)
def testJBSerialRelayCard(self): port = MockSerialPort() card = JBSerialRelayCard("Test", port) card.initialise() self.assertEqual([], port.bytes) port.clear() card.on(1) self.assertEqual(['\x32'], port.bytes) port.clear() channel = card.createDevice("channel", 2) channel.on() self.assertEqual(['\x34'], port.bytes) port.clear() channel.off() self.assertEqual(['\x35'], port.bytes)
def testCoriogenEclipse(self): port = MockSerialPort() ce = CoriogenEclipse("Test", port) ce.initialise() self.assertEqual([], port.bytes) ce.fadeIn() self.assertEqual(list(b"Fade = 1\r\n"), port.bytes) port.clear() ce.fadeIn() self.assertEqual(list(b"Fade = 1\r\n"), port.bytes) port.clear() ce.fadeOut() self.assertEqual(list(b"Fade = 0\r\n"), port.bytes) port.clear() ce.freeze() self.assertEqual(list(b"Freeze = On\r\n"), port.bytes) port.clear() ce.unfreeze() self.assertEqual(list(b"Freeze = Off\r\n"), port.bytes) port.clear() ce.overlayOn() self.assertEqual(list(b"Mode = 3\r\n"), port.bytes) port.clear() ce.overlayOff() self.assertEqual(list(b"Mode = 0\r\n"), port.bytes)