diff options
author | Nirbheek Chauhan <nirbheek@centricular.com> | 2018-08-12 00:55:04 +0530 |
---|---|---|
committer | Nirbheek Chauhan <nirbheek@centricular.com> | 2018-08-12 01:18:58 +0530 |
commit | c0413f5d49ce7b7df03cf859841aa8b275a6cd6d (patch) | |
tree | 287c25cd3f04838be712b8de4263e48a34f5ae47 /run_meson_command_tests.py | |
parent | 86298f2109d215ad6b26d3462af7b685d52d0dd7 (diff) | |
download | meson-c0413f5d49ce7b7df03cf859841aa8b275a6cd6d.zip meson-c0413f5d49ce7b7df03cf859841aa8b275a6cd6d.tar.gz meson-c0413f5d49ce7b7df03cf859841aa8b275a6cd6d.tar.bz2 |
setup: Add tests for the installed files list
Ensure that the installed files list matches what we expect, to avoid
surprises at release time.
Diffstat (limited to 'run_meson_command_tests.py')
-rwxr-xr-x | run_meson_command_tests.py | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/run_meson_command_tests.py b/run_meson_command_tests.py index f38b89a..4a05b94 100755 --- a/run_meson_command_tests.py +++ b/run_meson_command_tests.py @@ -131,8 +131,22 @@ class CommandTests(unittest.TestCase): os.environ['PYTHONPATH'] = str(pylibdir) os.environ['PATH'] = str(bindir) + os.pathsep + os.environ['PATH'] self._run(python_command + ['setup.py', 'install', '--prefix', str(prefix)]) - self.assertTrue(pylibdir.is_dir()) + # Check that all the files were installed correctly self.assertTrue(bindir.is_dir()) + self.assertTrue(pylibdir.is_dir()) + from setup import packages + # Extract list of expected python module files + expect = set() + for pkg in packages: + expect.update([p.as_posix() for p in Path(pkg.replace('.', '/')).glob('*.py')]) + # Check what was installed, only count files that are inside 'mesonbuild' + have = set() + for p in Path(pylibdir).glob('**/*.py'): + s = p.as_posix() + if 'mesonbuild' not in s: + continue + have.add(s[s.rfind('mesonbuild'):]) + self.assertEqual(have, expect) # Run `meson` os.chdir('/') resolved_meson_command = [str(bindir / 'meson')] |