From 2f965d0a328e40bd37bf915d4c8608ec5b6659bb Mon Sep 17 00:00:00 2001 From: Felix Kleinert <f.kleinert@fz-juelich.de> Date: Tue, 24 Mar 2020 10:31:03 +0100 Subject: [PATCH] split test_error_handling for #80 --- test/test_helpers.py | 33 ++++++++++++++++----------------- 1 file changed, 16 insertions(+), 17 deletions(-) diff --git a/test/test_helpers.py b/test/test_helpers.py index 5e4246cb..623c0bf8 100644 --- a/test/test_helpers.py +++ b/test/test_helpers.py @@ -135,39 +135,38 @@ class TestPrepareHost: @mock.patch("os.getlogin", return_value="testUser") @mock.patch("os.path.exists", return_value=True) def test_prepare_host(self, mock_host, mock_user, mock_path): - path = prepare_host() - assert path == "/home/testUser/machinelearningtools/data/toar_daily/" - path = prepare_host() - assert path == "/home/testUser/Data/toar_daily/" - path = prepare_host() - assert path == "/home/testUser/Data/toar_daily/" - path = prepare_host() - assert path == "/p/project/cjjsc42/testUser/DATA/toar_daily/" - path = prepare_host() - assert path == "/p/home/jusers/testUser/juwels/intelliaq/DATA/toar_daily/" - path = prepare_host() - assert path == '/home/testUser/machinelearningtools/data/toar_daily/' + assert prepare_host() == "/home/testUser/machinelearningtools/data/toar_daily/" + assert prepare_host() == "/home/testUser/Data/toar_daily/" + assert prepare_host() == "/home/testUser/Data/toar_daily/" + assert prepare_host() == "/p/project/cjjsc42/testUser/DATA/toar_daily/" + assert prepare_host() == "/p/home/jusers/testUser/juwels/intelliaq/DATA/toar_daily/" + assert prepare_host() == '/home/testUser/machinelearningtools/data/toar_daily/' @mock.patch("socket.gethostname", return_value="NotExistingHostName") @mock.patch("os.getlogin", return_value="zombie21") - def test_error_handling(self, mock_user, mock_host): + def test_error_handling_unknown_host(self, mock_user, mock_host): with pytest.raises(OSError) as e: prepare_host() assert "unknown host 'NotExistingHostName'" in e.value.args[0] + + @mock.patch("os.getlogin", return_value="zombie21") + @mock.patch("src.helpers.check_path_and_create", side_effect=PermissionError) + def test_error_handling(self, mock_cpath, mock_user): # if "runner-6HmDp9Qd-project-2411-concurrent" not in platform.node(): - mock_host.return_value = "linux-aa9b" + # mock_host.return_value = "linux-aa9b" with pytest.raises(NotADirectoryError) as e: prepare_host() - assert "does not exist for host 'linux-aa9b'" in e.value.args[0] + assert PyTestRegex(r"path '.*' does not exist for host '.*'\.") == e.value.args[0] with pytest.raises(NotADirectoryError) as e: prepare_host(False) - assert "does not exist for host 'linux-aa9b'" in e.value.args[0] + # assert "does not exist for host 'linux-aa9b'" in e.value.args[0] + assert PyTestRegex(r"path '.*' does not exist for host '.*'\.") == e.value.args[0] @mock.patch("socket.gethostname", side_effect=["linux-aa9b", "ZAM144", "zam347", "jrtest", "jwtest", "runner-6HmDp9Qd-project-2411-concurrent"]) @mock.patch("os.getlogin", side_effect=OSError) @mock.patch("os.path.exists", return_value=True) - def test_os_error(self, mock_host, mock_user, mock_path): + def test_os_error(self, mock_path, mock_user, mock_host): path = prepare_host() assert path == "/home/default/machinelearningtools/data/toar_daily/" path = prepare_host() -- GitLab