Skip to content

Commit c8c7301

Browse files
committed
Fix join_filename return value when basename or extension are empty.
1 parent f13bcfb commit c8c7301

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

fsutil/__init__.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -881,8 +881,10 @@ def join_filename(basename: str, extension: str) -> str:
881881
"""
882882
basename = basename.rstrip(".").strip()
883883
extension = extension.replace(".", "").strip()
884-
filename = f"{basename}.{extension}"
885-
return filename
884+
if basename and extension:
885+
filename = f"{basename}.{extension}"
886+
return filename
887+
return basename or extension
886888

887889

888890
def join_filepath(dirpath: PathIn, filename: str) -> str:

tests/test.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -805,6 +805,8 @@ def test_join_filename(self):
805805
self.assertEqual(fsutil.join_filename("Document", ".txt"), "Document.txt")
806806
self.assertEqual(fsutil.join_filename(" Document ", " txt "), "Document.txt")
807807
self.assertEqual(fsutil.join_filename("Document", " .txt "), "Document.txt")
808+
self.assertEqual(fsutil.join_filename("Document", ""), "Document")
809+
self.assertEqual(fsutil.join_filename("", "txt"), "txt")
808810

809811
def test_join_filepath(self):
810812
self.assertEqual(

0 commit comments

Comments
 (0)