summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJensDiemer <git@jensdiemer.de>2020-02-01 16:13:21 +0100
committerJensDiemer <git@jensdiemer.de>2020-02-01 16:13:21 +0100
commit7bd4d0e96cc7b282e40b91b9bc5f8eb7355077f3 (patch)
tree07b6c3f9ae12f015a8a5be6c55c4fb5bbb48d539
parentb389343e8bd60a5557cd18a1fef14c16a46db0bb (diff)
downloadcreole-7bd4d0e96cc7b282e40b91b9bc5f8eb7355077f3.tar.gz
test_update_rst_readme(): restore origin README.rst and better error message
-rw-r--r--creole/tests/test_setup_utils.py36
1 files changed, 21 insertions, 15 deletions
diff --git a/creole/tests/test_setup_utils.py b/creole/tests/test_setup_utils.py
index b99ea8c..3ef712a 100644
--- a/creole/tests/test_setup_utils.py
+++ b/creole/tests/test_setup_utils.py
@@ -11,7 +11,6 @@ import difflib
import filecmp
import os
import shutil
-import sys
import tempfile
from pathlib import Path
@@ -117,21 +116,28 @@ def test_update_rst_readme():
Path(CREOLE_PACKAGE_ROOT, 'README.rst'),
old_rest_readme_path
)
- rest_readme_path = update_creole_rst_readme()
- assert str(rest_readme_path.relative_to(CREOLE_PACKAGE_ROOT)) == 'README.rst'
-
- if filecmp.cmp(rest_readme_path, old_rest_readme_path, shallow=False) is True:
- return
+ try:
+ rest_readme_path = update_creole_rst_readme()
+ assert str(rest_readme_path.relative_to(CREOLE_PACKAGE_ROOT)) == 'README.rst'
- with old_rest_readme_path.open('r') as f:
- fromlines = f.readlines()
+ if filecmp.cmp(rest_readme_path, old_rest_readme_path, shallow=False) is True:
+ return
- with rest_readme_path.open('r') as f:
- tolines = f.readlines()
+ with old_rest_readme_path.open('r') as f:
+ from_file = [line.rstrip() for line in f]
- diff = difflib.ndiff(fromlines, tolines)
- print('=' * 100)
- sys.stdout.writelines(diff)
- print('=' * 100)
+ with rest_readme_path.open('r') as f:
+ to_tile = [line.rstrip() for line in f]
- assert fromlines == tolines
+ diff = '\n'.join(
+ line
+ for line in difflib.Differ().compare(from_file, to_tile)
+ if line[0] != ' '
+ )
+ raise AssertionError(f'README.rst is not up-to-date:\n{diff}')
+ finally:
+ # restore the origin file
+ shutil.copy(
+ old_rest_readme_path,
+ Path(CREOLE_PACKAGE_ROOT, 'README.rst'),
+ )