1
0
Fork 0
forked from github/pelican

skip tests that require git if git is not installed

and minor tweaks to subprocess handling
This commit is contained in:
Deniz Turgut 2023-10-28 14:49:55 +03:00
commit b6a9a8333b
No known key found for this signature in database
GPG key ID: 87B7168D7AB3ED2F
2 changed files with 9 additions and 3 deletions

View file

@ -231,7 +231,8 @@ def diff_subproc(first, second):
['git', '--no-pager', 'diff', '--no-ext-diff', '--exit-code',
'-w', first, second],
stdout=subprocess.PIPE,
stderr=subprocess.PIPE
stderr=subprocess.PIPE,
text=True,
)

View file

@ -15,7 +15,8 @@ from pelican.tests.support import (
LoggedTestCase,
diff_subproc,
locale_available,
mute
mute,
skipIfNoExecutable,
)
CURRENT_DIR = os.path.dirname(os.path.abspath(__file__))
@ -69,7 +70,8 @@ class TestPelican(LoggedTestCase):
if proc.returncode != 0:
msg = self._formatMessage(
msg,
"%s and %s differ:\n%s" % (left_path, right_path, err)
"%s and %s differ:\nstdout:\n%s\nstderr\n%s" %
(left_path, right_path, out, err)
)
raise self.failureException(msg)
@ -88,6 +90,7 @@ class TestPelican(LoggedTestCase):
generator_classes, Sequence,
"_get_generator_classes() must return a Sequence to preserve order")
@skipIfNoExecutable(['git', '--version'])
def test_basic_generation_works(self):
# when running pelican without settings, it should pick up the default
# ones and generate correct output without raising any exception
@ -107,6 +110,7 @@ class TestPelican(LoggedTestCase):
msg="Unable to find.*skipping url replacement",
level=logging.WARNING)
@skipIfNoExecutable(['git', '--version'])
def test_custom_generation_works(self):
# the same thing with a specified set of settings should work
settings = read_settings(path=SAMPLE_CONFIG, override={
@ -121,6 +125,7 @@ class TestPelican(LoggedTestCase):
self.temp_path, os.path.join(OUTPUT_PATH, 'custom')
)
@skipIfNoExecutable(['git', '--version'])
@unittest.skipUnless(locale_available('fr_FR.UTF-8') or
locale_available('French'), 'French locale needed')
def test_custom_locale_generation_works(self):