From f4382139dbdcf2ef7ed2c7bccacd7555c0811c0a Mon Sep 17 00:00:00 2001 From: debugtalk Date: Sun, 14 Jun 2020 20:18:58 +0800 Subject: [PATCH] fix: IndexError in ensure_file_path_valid when file_path=os.getcwd() --- httprunner/utils.py | 3 +++ tests/utils_test.py | 10 ++++++++++ 2 files changed, 13 insertions(+) diff --git a/httprunner/utils.py b/httprunner/utils.py index 7ba3b147..48da026a 100644 --- a/httprunner/utils.py +++ b/httprunner/utils.py @@ -199,6 +199,9 @@ def ensure_file_path_valid(file_path: Text) -> Text: else: raw_file_relative_name = raw_file_name + if raw_file_relative_name == "": + return file_path + path_names = [] for name in raw_file_relative_name.rstrip(os.sep).split(os.sep): diff --git a/tests/utils_test.py b/tests/utils_test.py index d301587b..df213a54 100644 --- a/tests/utils_test.py +++ b/tests/utils_test.py @@ -122,6 +122,16 @@ class TestUtils(unittest.TestCase): ensure_file_path_valid("examples/postman_echo/request_methods/"), os.path.join(os.getcwd(), "examples/postman_echo/request_methods"), ) + self.assertEqual( + ensure_file_path_valid(os.path.join(os.getcwd(), "test.yml")), + os.path.join(os.getcwd(), "test.yml"), + ) + self.assertEqual( + ensure_file_path_valid(os.getcwd()), os.getcwd(), + ) + self.assertEqual( + ensure_file_path_valid(os.getcwd() + ".csv"), os.getcwd() + ".csv", + ) def test_safe_dump_json(self): class A(object):