# -*- coding: utf-8 -*- """ @file rad_sensor.py @brief Tests for the radiation sensor handler @author J. Meier @date 01.07.2021 """ import struct from tmtccmd.config.definitions import QueueCommands from tmtccmd.tc.packer import TcQueueT from spacepackets.ecss.tc import PusTelecommand from pus_tc.service_200_mode import pack_mode_data def pack_rad_sensor_test_into( object_id: bytearray, tc_queue: TcQueueT, op_code: str ) -> TcQueueT: tc_queue.appendleft( ( QueueCommands.PRINT, "Testing radiation sensor handler with object id: 0x" + object_id.hex(), ) ) if op_code == "0": tc_queue.appendleft((QueueCommands.PRINT, "Rad sensor: Switch to mode on")) mode_data = pack_mode_data(object_id, 1, 0) command = PusTelecommand(service=200, subservice=1, ssc=41, app_data=mode_data) tc_queue.appendleft(command.pack_command_tuple()) if op_code == "1": tc_queue.appendleft((QueueCommands.PRINT, "Rad sensor: Switch to mode normal")) mode_data = pack_mode_data(object_id, 2, 0) command = PusTelecommand(service=200, subservice=1, ssc=42, app_data=mode_data) tc_queue.appendleft(command.pack_command_tuple()) if op_code == "2": tc_queue.appendleft((QueueCommands.PRINT, "Rad sensor: Switch to mode off")) mode_data = pack_mode_data(object_id, 0, 0) command = PusTelecommand(service=200, subservice=1, ssc=42, app_data=mode_data) tc_queue.appendleft(command.pack_command_tuple())