diff sat/tools/common/files_utils.py @ 3091:2e1c3d33099b

tools (common/files_utils): get_unique_name now uses and returns Path instances.
author Goffi <goffi@goffi.org>
date Fri, 20 Dec 2019 12:28:04 +0100
parents ab2696e34d29
children d6da17f6e4ce
line wrap: on
line diff
--- a/sat/tools/common/files_utils.py	Fri Dec 20 12:28:04 2019 +0100
+++ b/sat/tools/common/files_utils.py	Fri Dec 20 12:28:04 2019 +0100
@@ -18,18 +18,18 @@
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 """tools to help manipulating files"""
-import os.path
+from pathlib import Path
 
 
 def get_unique_name(path):
-    """generate a path with a name not conflicting with existing file
+    """Generate a path with a name not conflicting with existing file
 
-    @param path(unicode): path to the file to create
-    @return (unicode): unique path (can be the same as path if there is not conflict)
+    @param path(str, Path): path to the file to create
+    @return (Path): unique path (can be the same as path if there is no conflict)
     """
-    ori_path = path
+    ori_path = Path(path)
     idx = 1
-    while os.path.exists(path):
-        path = ori_path + "_" + str(idx)
+    while path.exists():
+        path = ori_path.with_name(ori_path.name  + f"_{idx}")
         idx += 1
     return path