Commit e84e263a authored by Éric Araujo's avatar Éric Araujo

Add test file for scripts in Tools (#13447).

When people find bugs in scripts such as reindent.py, msgfmt.py or
pygettext.py, we have to try to reproduce the bug manually, apply a fix
and test manually again.  The alternative is to only read the code and
trust that it works.  This test file is a way to stop that
unsatisfactory state of things and write proper unit tests instead.
parent 31378df8
"""Tests for scripts in the Tools directory.
This file contains regression tests for some of the scripts found in the
Tools directory of a Python checkout or tarball, such as reindent.py.
"""
import os
import unittest
import sysconfig
from test import test_support
from test.script_helper import assert_python_ok
if not sysconfig.is_python_build():
# XXX some installers do contain the tools, should we detect that
# and run the tests in that case too?
raise unittest.SkipTest('test irrelevant for an installed Python')
srcdir = sysconfig.get_config_var('projectbase')
basepath = os.path.join(os.getcwd(), srcdir, 'Tools')
class ReindentTests(unittest.TestCase):
script = os.path.join(basepath, 'scripts', 'reindent.py')
def test_noargs(self):
assert_python_ok(self.script)
def test_help(self):
rc, out, err = assert_python_ok(self.script, '-h')
self.assertEqual(out, b'')
self.assertGreater(err, b'')
def test_main():
test_support.run_unittest(ReindentTests)
if __name__ == '__main__':
unittest.main()
......@@ -98,6 +98,9 @@ Core and Builtins
Library
-------
- Issue #13447: Add a test file to host regression tests for bugs in the
scripts found in the Tools directory.
- Issue #6884: Fix long-standing bugs with MANIFEST.in parsing in distutils
on Windows.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment