Skip to content

Commit

Permalink
cr: move filename length logic into clean method
Browse files Browse the repository at this point in the history
  • Loading branch information
iamogbz committed Dec 4, 2019
1 parent 4c6ff52 commit 6bdb418
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions src/syrupy/plugins/image/io.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,9 @@ def discover_snapshots(self, filepath: str) -> Set[str]:
return {os.path.splitext(os.path.basename(filepath))[0]}

def get_file_basename(self, index: int) -> str:
ext = f".{self.extension}"
maybe_extension = f".{self.extension}" if self.extension else ""
sanitized_name = self._clean_filename(self.get_snapshot_name(index=index))
return f"{sanitized_name[:255 - len(ext)]}{ext}"
return f"{sanitized_name}{maybe_extension}"

def _get_snapshot_dirname(self):
return os.path.splitext(os.path.basename(str(self.test_location.filename)))[0]
Expand All @@ -48,4 +48,5 @@ def _write_file(self, filepath: str, data: Any):

def _clean_filename(self, filename: str) -> str:
filename = str(filename).strip().replace(" ", "_")
return re.sub(r"(?u)[^-\w.]", "", filename)
max_filename_length = 255 - (len(self.extension) if self.extension else 0)
return re.sub(r"(?u)[^-\w.]", "", filename)[:max_filename_length]

0 comments on commit 6bdb418

Please sign in to comment.