def test_set_rx_freq(self): """ Tests the functionality of the 'set_rx_freq' command. """ # Create a command handler to test with freq_mult = 1000000 test_command = MagicMock() test_device = MagicMock() test_device._radio_state = {"shifted_rx_freq": 0, "set_rx_freq": 0} test_handler = icom_910.ICOM910Handler(test_device) # Setup a mock rig and submit a command which should set the initial frequency test_handler.radio_rig = MagicMock() test_handler.radio_rig.get_freq = lambda: 10 * freq_mult # Convert to Hz from Mhz like Hamlib does test_handler.radio_rig.set_freq = lambda freq, vfo: Hamlib.RIG_OK test_command.parameters = {"rx_freq": 10} results = test_handler.command_set_rx_freq(test_command) # Check results and submit another command which simulates a doppler correction self.assertEqual(test_device._radio_state["shifted_rx_freq"], 0) self.assertEqual(test_device._radio_state["set_rx_freq"], 10 * freq_mult) self.assertEqual("The radio's RX frequency has been set.", results["message"]) self.assertEqual(results["frequency"], 10) test_handler.radio_rig.get_freq = lambda: 5 * freq_mult test_command.parameters = {"rx_freq": 5} results = test_handler.command_set_rx_freq(test_command) # Verify results self.assertEqual(test_device._radio_state["shifted_rx_freq"], 5 * freq_mult) self.assertEqual(test_device._radio_state["set_rx_freq"], 10 * freq_mult) self.assertEqual("The radio's RX frequency has been set.", results["message"]) self.assertEqual(results["frequency"], 5)
def test_set_tx_freq(self): """ Tests the functionality of the 'set_tx_freq' command. """ # Create a command handler to test with freq_mult = 1000000 test_command = MagicMock() test_device = MagicMock() test_device._radio_state = {"shifted_tx_freq": 0, "set_tx_freq": 0} test_device.doppler_update_inactive_tx_delay = 2 # s mock_tnc_state = { "last_transmitted": int(time.time()) - test_device.doppler_update_inactive_tx_delay * 2, "output_buffer_size_bytes": 0, } test_device._tnc_state_service.get_state = lambda: mock_tnc_state test_handler = icom_910.ICOM910Handler(test_device) # Setup a mock rig and submit a command which should set the initial frequency test_handler.radio_rig = MagicMock() test_handler.radio_rig.get_split_freq = lambda: 10 * freq_mult # Convert to Hz from Mhz like Hamlib does test_handler.radio_rig.set_split_freq = lambda vfo, freq: Hamlib.RIG_OK test_command.parameters = {"tx_freq": 10} results = test_handler.command_set_tx_freq(test_command) # Check results and submit another command which simulates a doppler correction self.assertEqual(test_device._radio_state["shifted_tx_freq"], 0) self.assertEqual(test_device._radio_state["set_tx_freq"], 10 * freq_mult) self.assertEqual("The radio's TX frequency has been set using a split.", results["message"]) self.assertEqual(results["frequency"], 10) test_handler.radio_rig.get_split_freq = lambda: 5 * freq_mult test_command.parameters = {"tx_freq": 5} results = test_handler.command_set_tx_freq(test_command) # Verify results self.assertEqual(test_device._radio_state["shifted_tx_freq"], 5 * freq_mult) self.assertEqual(test_device._radio_state["set_tx_freq"], 10 * freq_mult) self.assertEqual("The radio's TX frequency has been set using a split.", results["message"]) self.assertEqual(results["frequency"], 5)
def test_set_mode_command(self): """ Tests the functionality of the 'set_mode' command. """ # Create a command handler to test with test_command = MagicMock() test_device = MagicMock() test_device._radio_state = {} test_handler = icom_910.ICOM910Handler(test_device) def mock_rig_strrmode(mode): self.assertEqual(mode, "FM") return "FM" # Setup a mock rig and submit a test command Hamlib.rig_strrmode = mock_rig_strrmode test_handler.radio_rig = MagicMock() test_handler.radio_rig.set_mode = lambda mode: Hamlib.RIG_OK test_handler.radio_rig.get_mode = lambda: ("FM", 10) test_command.parameters = {"mode": "FM"} results = test_handler.command_set_mode(test_command) # Check results self.assertEqual(test_device._radio_state["mode"], "FM") self.assertEqual(results["message"], "The radio mode has been set.")