From d4b544daf399f2d356fbc8b0dccfe170ac18575b Mon Sep 17 00:00:00 2001 From: "Barak Y. Reif" Date: Sat, 28 Sep 2019 21:59:41 +0300 Subject: [PATCH] alter file with new line even if no other content is changed --- pre_commit_hooks/requirements_txt_fixer.py | 6 +++--- tests/requirements_txt_fixer_test.py | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pre_commit_hooks/requirements_txt_fixer.py b/pre_commit_hooks/requirements_txt_fixer.py index 55744c6..1691d80 100644 --- a/pre_commit_hooks/requirements_txt_fixer.py +++ b/pre_commit_hooks/requirements_txt_fixer.py @@ -43,13 +43,13 @@ def fix_requirements(f): # type: (IO[bytes]) -> int before = list(f) # type: List[bytes] after = [] # type: List[bytes] + before_string = b''.join(before) + # adds new line in case one is missing # AND a change to the requirements file is needed regardless: if before and not before[-1].endswith(b'\n'): before[-1] += b'\n' - before_string = b''.join(before) - # If the file is empty (i.e. only whitespace/newlines) exit early if before_string.strip() == b'': return PASS @@ -99,7 +99,7 @@ def fix_requirements(f): # type: (IO[bytes]) -> int after_string = b''.join(after) - if before_string.rstrip() == after_string.rstrip(): + if before_string == after_string: return PASS else: f.seek(0) diff --git a/tests/requirements_txt_fixer_test.py b/tests/requirements_txt_fixer_test.py index 7c74ffc..2e2eab6 100644 --- a/tests/requirements_txt_fixer_test.py +++ b/tests/requirements_txt_fixer_test.py @@ -17,7 +17,7 @@ from pre_commit_hooks.requirements_txt_fixer import Requirement (b'bar\nfoo\n', PASS, b'bar\nfoo\n'), (b'a\nc\nb\n', FAIL, b'a\nb\nc\n'), (b'a\nc\nb', FAIL, b'a\nb\nc\n'), - (b'a\nb\nc', PASS, b'a\nb\nc'), + (b'a\nb\nc', FAIL, b'a\nb\nc\n'), ( b'#comment1\nfoo\n#comment2\nbar\n', FAIL,