def __set_mode(self, version, address, bytes): """ Set the power modules mode. """ if address not in self.__mode or self.__mode[address] != bytes: LOGGER.info("Setting day/night mode to " + str(bytes)) self.__power_communicator.do_command( address, power_api.set_day_night(version), *bytes) self.__mode[address] = bytes
def __set_mode(self, version, address, bytes): # type: (int, str, List[int]) -> None """ Set the power modules mode. """ if address not in self.__mode or self.__mode[address] != bytes: logger.info("Setting day/night mode to " + str(bytes)) self.__power_communicator.do_command(address, power_api.set_day_night(version), *bytes) self.__mode[address] = bytes
def test_timekeeper(self): """ Test the TimeKeeper. """ SetUpTestInjections(power_db=PowerCommunicatorTest.FILE) power_controller = PowerController() power_controller.register_power_module(1, power_api.POWER_MODULE) time_action = power_api.set_day_night(power_api.POWER_MODULE) times = [power_api.NIGHT for _ in range(8)] action = power_api.get_voltage(power_api.POWER_MODULE) serial_mock = RS485( SerialMock([ sin(time_action.create_input(1, 1, *times)), sout(time_action.create_output(1, 1)), sin(action.create_input(1, 2)), sout(action.create_output(1, 2, 243)) ], 1)) comm = PowerCommunicatorTest._get_communicator( serial_mock, 1, power_controller=power_controller) comm.start() time.sleep(1.5) self.assertEquals((243, ), comm.do_command(1, action))
def test_timekeeper(self): """ Test the TimeKeeper. """ self.store.register_power_module(1, power_api.POWER_MODULE) time_action = power_api.set_day_night(power_api.POWER_MODULE) times = [power_api.NIGHT for _ in range(8)] action = power_api.get_voltage(power_api.POWER_MODULE) self.power_data.extend([ sin(time_action.create_input(1, 1, *times)), sout(time_action.create_output(1, 1)), sin(action.create_input(1, 2)), sout(action.create_output(1, 2, 243)) ]) self.communicator = PowerCommunicator(time_keeper_period=1) self.serial.start() self.communicator.start() time.sleep(1.5) self.assertEqual((243, ), self.communicator.do_command(1, action))
def test_timekeeper(self): """ Test the TimeKeeper. """ power_controller = PowerController(PowerCommunicatorTest.FILE) power_controller.register_power_module(1, power_api.POWER_API_8_PORTS) time_action = power_api.set_day_night(power_api.POWER_API_8_PORTS) times = [power_api.NIGHT for _ in range(8)] action = power_api.get_voltage(power_api.POWER_API_8_PORTS) serial_mock = RS485(SerialMock( [sin(time_action.create_input(1, 1, *times)), sout(time_action.create_output(1, 1)), sin(action.create_input(1, 2)), sout(action.create_output(1, 2, 243)) ], 1)) comm = self.__get_communicator(serial_mock, 1, power_controller=power_controller) comm.start() time.sleep(1.5) self.assertEquals((243, ), comm.do_command(1, action))
def __set_mode(self, version, address, bytes): """ Set the power modules mode. """ if address not in self.__mode or self.__mode[address] != bytes: LOGGER.info("Setting day/night mode to " + str(bytes)) self.__power_communicator.do_command(address, power_api.set_day_night(version), *bytes) self.__mode[address] = bytes