def test_process(self): """Test process telegram.""" xknx = XKNX(loop=self.loop) remote_value = RemoteValueColorRGBW(xknx, group_address=GroupAddress("1/2/3")) telegram = Telegram( group_address=GroupAddress("1/2/3"), payload=DPTArray((0x64, 0x65, 0x66, 0x67, 0x00, 0x0F)), ) self.loop.run_until_complete(remote_value.process(telegram)) self.assertEqual(remote_value.value, [100, 101, 102, 103])
def test_to_process_error(self): """Test process errornous telegram.""" xknx = XKNX(loop=self.loop) remote_value = RemoteValueColorRGBW( xknx, group_address=GroupAddress("1/2/3")) with self.assertRaises(CouldNotParseTelegram): telegram = Telegram(group_address=GroupAddress("1/2/3"), payload=DPTBinary(1)) self.loop.run_until_complete( asyncio.Task(remote_value.process(telegram))) with self.assertRaises(CouldNotParseTelegram): telegram = Telegram(group_address=GroupAddress("1/2/3"), payload=DPTArray((0x64, 0x65, 0x66))) self.loop.run_until_complete( asyncio.Task(remote_value.process(telegram))) with self.assertRaises(CouldNotParseTelegram): telegram = Telegram(group_address=GroupAddress("1/2/3"), payload=DPTArray((0x00, 0x00, 0x0f, 0x64, 0x65, 0x66, 0x67))) self.loop.run_until_complete( asyncio.Task(remote_value.process(telegram)))