From e27d210a710afe78b1c34eb6117a65d742a55d32 Mon Sep 17 00:00:00 2001 From: Ian McEwen Date: Wed, 5 Jun 2024 19:57:40 -0700 Subject: [PATCH] Test with --dest on setlat/remove-position for the error/exit case --- meshtastic/tests/test_main.py | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/meshtastic/tests/test_main.py b/meshtastic/tests/test_main.py index 650ccf2..18fa497 100644 --- a/meshtastic/tests/test_main.py +++ b/meshtastic/tests/test_main.py @@ -724,12 +724,41 @@ def test_main_sendtext_with_dest(mock_findPorts, mock_serial, mocked_open, mock_ assert re.search(r"Warning: There were no self.nodes.", caplog.text, re.MULTILINE) assert err == "" +@pytest.mark.unit +@pytest.mark.usefixtures("reset_mt_config") +def test_main_removeposition_invalid(capsys): + """Test --remove-position with an invalid dest""" + sys.argv = ["", "--remove-position", "--dest", "!12345678"] + mt_config.args = sys.argv + iface = MagicMock(autospec=SerialInterface) + with patch("meshtastic.serial_interface.SerialInterface", return_value=iface) as mo: + main() + out, err = capsys.readouterr() + assert re.search(r"Connected to radio", out, re.MULTILINE) + assert re.search(r"remote nodes is not supported", out, re.MULTILINE) + assert err == "" + mo.assert_called() + +@pytest.mark.unit +@pytest.mark.usefixtures("reset_mt_config") +def test_main_setlat_invalid(capsys): + """Test --setlat with an invalid dest""" + sys.argv = ["", "--setlat", "37.5", "--dest", "!12345678"] + mt_config.args = sys.argv + iface = MagicMock(autospec=SerialInterface) + with patch("meshtastic.serial_interface.SerialInterface", return_value=iface) as mo: + main() + out, err = capsys.readouterr() + assert re.search(r"Connected to radio", out, re.MULTILINE) + assert re.search(r"remote nodes is not supported", out, re.MULTILINE) + assert err == "" + mo.assert_called() + @pytest.mark.unit @pytest.mark.usefixtures("reset_mt_config") def test_main_removeposition(capsys): """Test --remove-position""" sys.argv = ["", "--remove-position"] - mt_config.args = sys.argv mocked_node = MagicMock(autospec=Node)