From 1ec527b3e9464f963e8fdaf8ceb6c47b80f140f8 Mon Sep 17 00:00:00 2001 From: Jan David Mol <mol@astron.nl> Date: Wed, 23 Feb 2022 20:52:24 +0100 Subject: [PATCH] L2SS-577: Mock sys.argv instead of setting it --- .../test/test_statistics_writer.py | 21 ++++++++----------- 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/tangostationcontrol/tangostationcontrol/test/test_statistics_writer.py b/tangostationcontrol/tangostationcontrol/test/test_statistics_writer.py index 12f641e79..4b10230c8 100644 --- a/tangostationcontrol/tangostationcontrol/test/test_statistics_writer.py +++ b/tangostationcontrol/tangostationcontrol/test/test_statistics_writer.py @@ -12,22 +12,19 @@ from tangostationcontrol.statistics_writer import statistics_writer import sys from os.path import dirname from tempfile import TemporaryDirectory +from unittest import mock class TestStatisticsWriter(base.TestCase): - def setUp(self): - # strip all command-line arguments to allow us to redefine them in the test - sys.argv = [sys.argv[0]] - def test_sst(self): with TemporaryDirectory() as tmpdir: - sys.argv += ["--mode", "SST", "--file", dirname(__file__) + "/SDP_SST_statistics_packets.bin", "--output_dir", tmpdir] - - with self.assertRaises(SystemExit): - statistics_writer.main() + new_sys_argv = [sys.argv[0], "--mode", "SST", "--file", dirname(__file__) + "/SDP_SST_statistics_packets.bin", "--output_dir", tmpdir] + with mock.patch.object(statistics_writer.sys, 'argv', new_sys_argv): + with self.assertRaises(SystemExit): + statistics_writer.main() def test_xst(self): with TemporaryDirectory() as tmpdir: - sys.argv += ["--mode", "XST", "--file", dirname(__file__) + "/SDP_XST_statistics_packets.bin", "--output_dir", tmpdir] - - with self.assertRaises(SystemExit): - statistics_writer.main() + new_sys_argv = [sys.argv[0], "--mode", "XST", "--file", dirname(__file__) + "/SDP_XST_statistics_packets.bin", "--output_dir", tmpdir] + with mock.patch.object(statistics_writer.sys, 'argv', new_sys_argv): + with self.assertRaises(SystemExit): + statistics_writer.main() -- GitLab