From f6645ef027762adbb159a3b6d64a15538672eaa2 Mon Sep 17 00:00:00 2001 From: Zachary Ware Date: Sat, 9 Jun 2018 13:50:23 -0500 Subject: [PATCH] bpo-28222: Don't fail if pygments is not available (GH-7564) We can't just skip the test if docutils is available, but pygments is not because the purpose of the test was testing a bug in _check_rst_data(). (cherry-picked from b5bb404ccaa9a3dd81e220fb4ca40253be778831) --- Lib/distutils/tests/test_check.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/Lib/distutils/tests/test_check.py b/Lib/distutils/tests/test_check.py index 81058b1911ee..e94647ffa4a7 100644 --- a/Lib/distutils/tests/test_check.py +++ b/Lib/distutils/tests/test_check.py @@ -8,6 +8,12 @@ from distutils.command.check import check, HAS_DOCUTILS from distutils.tests import support from distutils.errors import DistutilsSetupError +try: + import pygments +except ImportError: + pygments = None + + class CheckTestCase(support.LoggingSilencer, support.TempdirManager, unittest.TestCase): @@ -120,9 +126,15 @@ class CheckTestCase(support.LoggingSilencer, pkg_info, dist = self.create_dist(long_description=rest_with_code) cmd = check(dist) cmd.check_restructuredtext() - self.assertEqual(cmd._warnings, 0) msgs = cmd._check_rst_data(rest_with_code) - self.assertEqual(len(msgs), 0) + if pygments is not None: + self.assertEqual(len(msgs), 0) + else: + self.assertEqual(len(msgs), 1) + self.assertEqual( + str(msgs[0][1]), + 'Cannot analyze code. Pygments package not found.' + ) def test_check_all(self): -- 2.47.3