diff options
Diffstat (limited to 'run_unittests.py')
-rwxr-xr-x | run_unittests.py | 94 |
1 files changed, 47 insertions, 47 deletions
diff --git a/run_unittests.py b/run_unittests.py index 7c8d230..ffeff79 100755 --- a/run_unittests.py +++ b/run_unittests.py @@ -987,7 +987,7 @@ class AllPlatformTests(BasePlatformTests): dependent defaults for other options, and that those defaults can be overridden in default_options or by the command line. ''' - testdir = os.path.join(self.common_test_dir, '173 default options prefix dependent defaults') + testdir = os.path.join(self.common_test_dir, '172 default options prefix dependent defaults') expected = { '': {'prefix': '/usr', @@ -1112,7 +1112,7 @@ class AllPlatformTests(BasePlatformTests): self.assertPathDoesNotExist(exename) def test_forcefallback(self): - testdir = os.path.join(self.unit_test_dir, '27 forcefallback') + testdir = os.path.join(self.unit_test_dir, '31 forcefallback') self.init(testdir, ['--wrap-mode=forcefallback']) self.build() self.run_tests() @@ -1148,7 +1148,7 @@ class AllPlatformTests(BasePlatformTests): self._run(self.mtest_command + ['--setup=timeout']) def test_testsetup_selection(self): - testdir = os.path.join(self.unit_test_dir, '13 testsetup selection') + testdir = os.path.join(self.unit_test_dir, '14 testsetup selection') self.init(testdir) self.build() @@ -1652,7 +1652,7 @@ int main(int argc, char **argv) { self.assertTrue(rpath is None) def test_dash_d_dedup(self): - testdir = os.path.join(self.unit_test_dir, '10 d dedup') + testdir = os.path.join(self.unit_test_dir, '9 d dedup') self.init(testdir) cmd = self.get_compdb()[0]['command'] self.assertTrue('-D FOO -D BAR' in cmd or @@ -1662,10 +1662,10 @@ int main(int argc, char **argv) { def test_all_forbidden_targets_tested(self): ''' - Test that all forbidden targets are tested in the '159 reserved targets' + Test that all forbidden targets are tested in the '158 reserved targets' test. Needs to be a unit test because it accesses Meson internals. ''' - testdir = os.path.join(self.common_test_dir, '159 reserved targets') + testdir = os.path.join(self.common_test_dir, '158 reserved targets') targets = mesonbuild.coredata.forbidden_target_names # We don't actually define a target with this name targets.pop('build.ninja') @@ -1703,7 +1703,7 @@ int main(int argc, char **argv) { def test_prebuilt_object(self): (compiler, _, object_suffix, _) = self.detect_prebuild_env() - tdir = os.path.join(self.unit_test_dir, '14 prebuilt object') + tdir = os.path.join(self.unit_test_dir, '15 prebuilt object') source = os.path.join(tdir, 'source.c') objectfile = os.path.join(tdir, 'prebuilt.' + object_suffix) self.pbcompile(compiler, source, objectfile) @@ -1734,7 +1734,7 @@ int main(int argc, char **argv) { def test_prebuilt_static_lib(self): (cc, stlinker, object_suffix, _) = self.detect_prebuild_env() - tdir = os.path.join(self.unit_test_dir, '15 prebuilt static') + tdir = os.path.join(self.unit_test_dir, '16 prebuilt static') source = os.path.join(tdir, 'libdir/best.c') objectfile = os.path.join(tdir, 'libdir/best.' + object_suffix) stlibfile = os.path.join(tdir, 'libdir/libbest.a') @@ -1766,7 +1766,7 @@ int main(int argc, char **argv) { def test_prebuilt_shared_lib(self): (cc, _, object_suffix, shared_suffix) = self.detect_prebuild_env() - tdir = os.path.join(self.unit_test_dir, '16 prebuilt shared') + tdir = os.path.join(self.unit_test_dir, '17 prebuilt shared') source = os.path.join(tdir, 'alexandria.c') objectfile = os.path.join(tdir, 'alexandria.' + object_suffix) impfile = os.path.join(tdir, 'alexandria.lib') @@ -1803,7 +1803,7 @@ int main(int argc, char **argv) { https://github.com/mesonbuild/meson/issues/2785 ''' (cc, stlinker, objext, shext) = self.detect_prebuild_env() - testdir = os.path.join(self.unit_test_dir, '17 pkgconfig static') + testdir = os.path.join(self.unit_test_dir, '18 pkgconfig static') source = os.path.join(testdir, 'foo.c') objectfile = os.path.join(testdir, 'foo.' + objext) stlibfile = os.path.join(testdir, 'libfoo.a') @@ -1868,7 +1868,7 @@ int main(int argc, char **argv) { 'type': 'array', 'value': ['foo', 'bar'], } - tdir = os.path.join(self.unit_test_dir, '18 array option') + tdir = os.path.join(self.unit_test_dir, '19 array option') self.init(tdir) original = get_opt() self.assertDictEqual(original, expected) @@ -1892,7 +1892,7 @@ int main(int argc, char **argv) { 'type': 'array', 'value': ['foo', 'bar'], } - tdir = os.path.join(self.unit_test_dir, '18 array option') + tdir = os.path.join(self.unit_test_dir, '19 array option') self.init(tdir) original = get_opt() self.assertDictEqual(original, expected) @@ -1916,7 +1916,7 @@ int main(int argc, char **argv) { 'type': 'array', 'value': [], } - tdir = os.path.join(self.unit_test_dir, '18 array option') + tdir = os.path.join(self.unit_test_dir, '19 array option') self.init(tdir, extra_args='-Dlist=') original = get_opt() self.assertDictEqual(original, expected) @@ -1941,7 +1941,7 @@ int main(int argc, char **argv) { self.opt_has('free_array_opt', ['a,b', 'c,d']) def test_subproject_promotion(self): - testdir = os.path.join(self.unit_test_dir, '13 promote') + testdir = os.path.join(self.unit_test_dir, '12 promote') workdir = os.path.join(self.builddir, 'work') shutil.copytree(testdir, workdir) spdir = os.path.join(workdir, 'subprojects') @@ -1965,7 +1965,7 @@ int main(int argc, char **argv) { self.build() def test_warning_location(self): - tdir = os.path.join(self.unit_test_dir, '21 warning location') + tdir = os.path.join(self.unit_test_dir, '22 warning location') out = self.init(tdir) for expected in [ r'meson.build:4: WARNING: Keyword argument "link_with" defined multiple times.', @@ -1979,7 +1979,7 @@ int main(int argc, char **argv) { self.assertRegex(out, re.escape(expected)) def test_permitted_method_kwargs(self): - tdir = os.path.join(self.unit_test_dir, '23 non-permitted kwargs') + tdir = os.path.join(self.unit_test_dir, '25 non-permitted kwargs') out = self.init(tdir) for expected in [ r'WARNING: Passed invalid keyword argument "prefixxx".', @@ -2063,7 +2063,7 @@ int main(int argc, char **argv) { The test checks that the compiler object can be passed to run_command(). ''' - testdir = os.path.join(self.unit_test_dir, '23 compiler run_command') + testdir = os.path.join(self.unit_test_dir, '24 compiler run_command') self.init(testdir) def test_identical_target_name_in_subproject_flat_layout(self): @@ -2071,7 +2071,7 @@ int main(int argc, char **argv) { Test that identical targets in different subprojects do not collide if layout is flat. ''' - testdir = os.path.join(self.common_test_dir, '182 identical target name in subproject flat layout') + testdir = os.path.join(self.common_test_dir, '181 identical target name in subproject flat layout') self.init(testdir, extra_args=['--layout=flat']) self.build() @@ -2080,7 +2080,7 @@ int main(int argc, char **argv) { Test that identical targets in different subdirs do not collide if layout is flat. ''' - testdir = os.path.join(self.common_test_dir, '192 same target name flat layout') + testdir = os.path.join(self.common_test_dir, '190 same target name flat layout') self.init(testdir, extra_args=['--layout=flat']) self.build() @@ -2103,21 +2103,21 @@ int main(int argc, char **argv) { https://github.com/mesonbuild/meson/issues/2865 (That an error is raised on OSX is exercised by test failing/78) """ - tdir = os.path.join(self.unit_test_dir, '26 shared_mod linking') + tdir = os.path.join(self.unit_test_dir, '30 shared_mod linking') out = self.init(tdir) msg = ('''WARNING: target links against shared modules. This is not recommended as it is not supported on some platforms''') self.assertIn(msg, out) def test_ndebug_if_release_disabled(self): - testdir = os.path.join(self.unit_test_dir, '25 ndebug if-release') + testdir = os.path.join(self.unit_test_dir, '28 ndebug if-release') self.init(testdir, extra_args=['--buildtype=release', '-Db_ndebug=if-release']) self.build() exe = os.path.join(self.builddir, 'main') self.assertEqual(b'NDEBUG=1', subprocess.check_output(exe).strip()) def test_ndebug_if_release_enabled(self): - testdir = os.path.join(self.unit_test_dir, '25 ndebug if-release') + testdir = os.path.join(self.unit_test_dir, '28 ndebug if-release') self.init(testdir, extra_args=['--buildtype=debugoptimized', '-Db_ndebug=if-release']) self.build() exe = os.path.join(self.builddir, 'main') @@ -2129,7 +2129,7 @@ recommended as it is not supported on some platforms''') linker command line. ''' # build library - testdirbase = os.path.join(self.unit_test_dir, '26 guessed linker dependencies') + testdirbase = os.path.join(self.unit_test_dir, '29 guessed linker dependencies') testdirlib = os.path.join(testdirbase, 'lib') extra_args = None env = Environment(testdirlib, self.builddir, get_fake_options(self.prefix)) @@ -2172,14 +2172,14 @@ recommended as it is not supported on some platforms''') self.assertRebuiltTarget('app') def test_conflicting_d_dash_option(self): - testdir = os.path.join(self.unit_test_dir, '30 mixed command line args') + testdir = os.path.join(self.unit_test_dir, '35 mixed command line args') with self.assertRaises(subprocess.CalledProcessError) as e: self.init(testdir, extra_args=['-Dbindir=foo', '--bindir=bar']) # Just to ensure that we caught the correct error self.assertIn('passed as both', e.stderr) def _test_same_option_twice(self, arg, args): - testdir = os.path.join(self.unit_test_dir, '30 mixed command line args') + testdir = os.path.join(self.unit_test_dir, '35 mixed command line args') self.init(testdir, extra_args=args) opts = self.introspect('--buildoptions') for item in opts: @@ -2198,7 +2198,7 @@ recommended as it is not supported on some platforms''') self._test_same_option_twice('one', ['-Done=foo', '-Done=bar']) def _test_same_option_twice_configure(self, arg, args): - testdir = os.path.join(self.unit_test_dir, '30 mixed command line args') + testdir = os.path.join(self.unit_test_dir, '35 mixed command line args') self.init(testdir) self.setconf(args) opts = self.introspect('--buildoptions') @@ -2221,7 +2221,7 @@ recommended as it is not supported on some platforms''') 'one', ['-Done=foo', '-Done=bar']) def test_command_line(self): - testdir = os.path.join(self.unit_test_dir, '30 command line') + testdir = os.path.join(self.unit_test_dir, '34 command line') # Verify default values when passing no args self.init(testdir) @@ -2396,7 +2396,7 @@ recommended as it is not supported on some platforms''') self.assertIn(f, toc) def test_feature_check_usage_subprojects(self): - testdir = os.path.join(self.unit_test_dir, '34 featurenew subprojects') + testdir = os.path.join(self.unit_test_dir, '39 featurenew subprojects') out = self.init(testdir) # Parent project warns correctly self.assertRegex(out, "WARNING: Project targetting '>=0.45'.*'0.47.0': dict") @@ -2691,7 +2691,7 @@ class WindowsTests(BasePlatformTests): correctly. Cannot be an ordinary test because it involves manipulating PATH to point to a directory with Python scripts. ''' - testdir = os.path.join(self.platform_test_dir, '9 find program') + testdir = os.path.join(self.platform_test_dir, '8 find program') # Find `cmd` and `cmd.exe` prog1 = ExternalProgram('cmd') self.assertTrue(prog1.found(), msg='cmd not found') @@ -2759,7 +2759,7 @@ class WindowsTests(BasePlatformTests): self.wipe() if depfile_works: - testdir = os.path.join(self.platform_test_dir, '13 resources with custom targets') + testdir = os.path.join(self.platform_test_dir, '12 resources with custom targets') self.init(testdir) self.build() # Immediately rebuilding should not do anything @@ -2884,7 +2884,7 @@ class LinuxlikeTests(BasePlatformTests): self.assertEqual(sorted(out), sorted(['libexposed', 'libfoo >= 1.0', 'libhello'])) def test_pkg_unfound(self): - testdir = os.path.join(self.unit_test_dir, '22 unfound pkgconfig') + testdir = os.path.join(self.unit_test_dir, '23 unfound pkgconfig') self.init(testdir) with open(os.path.join(self.privatedir, 'somename.pc')) as f: pcfile = f.read() @@ -3158,7 +3158,7 @@ class LinuxlikeTests(BasePlatformTests): ''' Test that files are installed with correct permissions using install_mode. ''' - testdir = os.path.join(self.common_test_dir, '201 install_mode') + testdir = os.path.join(self.common_test_dir, '199 install_mode') self.init(testdir) self.build() self.install() @@ -3198,11 +3198,11 @@ class LinuxlikeTests(BasePlatformTests): ''' # Copy source tree to a temporary directory and change permissions # there to simulate a checkout with umask 002. - orig_testdir = os.path.join(self.unit_test_dir, '24 install umask') + orig_testdir = os.path.join(self.unit_test_dir, '26 install umask') # Create a new testdir under tmpdir. tmpdir = os.path.realpath(tempfile.mkdtemp()) self.addCleanup(windows_proof_rmtree, tmpdir) - testdir = os.path.join(tmpdir, '24 install umask') + testdir = os.path.join(tmpdir, '26 install umask') # Copy the tree using shutil.copyfile, which will use the current umask # instead of preserving permissions of the old tree. save_umask = os.umask(0o002) @@ -3310,7 +3310,7 @@ class LinuxlikeTests(BasePlatformTests): self.assertTrue('prog' in v or 'foo' in v) def test_order_of_l_arguments(self): - testdir = os.path.join(self.unit_test_dir, '9 -L -l order') + testdir = os.path.join(self.unit_test_dir, '8 -L -l order') os.environ['PKG_CONFIG_PATH'] = testdir self.init(testdir) # NOTE: .pc file has -Lfoo -lfoo -Lbar -lbar but pkg-config reorders @@ -3370,7 +3370,7 @@ class LinuxlikeTests(BasePlatformTests): def test_build_rpath(self): if is_cygwin(): raise unittest.SkipTest('Windows PE/COFF binaries do not use RPATH') - testdir = os.path.join(self.unit_test_dir, '11 build_rpath') + testdir = os.path.join(self.unit_test_dir, '10 build_rpath') self.init(testdir) self.build() # C program RPATH @@ -3413,7 +3413,7 @@ class LinuxlikeTests(BasePlatformTests): self.run_target('coverage-html') def test_cross_find_program(self): - testdir = os.path.join(self.unit_test_dir, '12 cross prog') + testdir = os.path.join(self.unit_test_dir, '11 cross prog') crossfile = tempfile.NamedTemporaryFile(mode='w') print(os.path.join(testdir, 'some_cross_tool.py')) crossfile.write('''[binaries] @@ -3476,8 +3476,8 @@ endian = 'little' @skipIfNoPkgconfig def test_pkgconfig_usage(self): - testdir1 = os.path.join(self.unit_test_dir, '24 pkgconfig usage/dependency') - testdir2 = os.path.join(self.unit_test_dir, '24 pkgconfig usage/dependee') + testdir1 = os.path.join(self.unit_test_dir, '27 pkgconfig usage/dependency') + testdir2 = os.path.join(self.unit_test_dir, '27 pkgconfig usage/dependee') if subprocess.call(['pkg-config', '--cflags', 'glib-2.0'], stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL) != 0: @@ -3516,7 +3516,7 @@ endian = 'little' ''' with tempfile.TemporaryDirectory() as tempdirname: # build library - testdirbase = os.path.join(self.unit_test_dir, '28 pkgconfig use libraries') + testdirbase = os.path.join(self.unit_test_dir, '32 pkgconfig use libraries') testdirlib = os.path.join(testdirbase, 'lib') self.init(testdirlib, extra_args=['--prefix=' + tempdirname, '--libdir=lib', @@ -3533,7 +3533,7 @@ endian = 'little' @skipIfNoPkgconfig def test_pkgconfig_formatting(self): - testdir = os.path.join(self.unit_test_dir, '31 pkgconfig format') + testdir = os.path.join(self.unit_test_dir, '36 pkgconfig format') self.init(testdir) myenv = os.environ.copy() myenv['PKG_CONFIG_PATH'] = self.privatedir @@ -3595,7 +3595,7 @@ endian = 'little' ''' Test that the dependencies are always listed in a deterministic order. ''' - testdir = os.path.join(self.unit_test_dir, '36 dep order') + testdir = os.path.join(self.unit_test_dir, '41 dep order') self.init(testdir) with open(os.path.join(self.builddir, 'build.ninja')) as bfile: for line in bfile: @@ -3610,7 +3610,7 @@ endian = 'little' ''' if is_cygwin(): raise unittest.SkipTest('rpath are not used on Cygwin') - testdir = os.path.join(self.unit_test_dir, '35 rpath order') + testdir = os.path.join(self.unit_test_dir, '40 rpath order') self.init(testdir) if is_osx(): rpathre = re.compile('-rpath,.*/subprojects/sub1.*-rpath,.*/subprojects/sub2') @@ -3637,7 +3637,7 @@ endian = 'little' raise unittest.SkipTest('workflow currently only works on macOS') oldprefix = self.prefix # Install external library so we can find it - testdir = os.path.join(self.unit_test_dir, '33 external, internal library rpath', 'external library') + testdir = os.path.join(self.unit_test_dir, '38 external, internal library rpath', 'external library') # install into installdir without using DESTDIR installdir = self.installdir self.prefix = installdir @@ -3649,7 +3649,7 @@ endian = 'little' self.new_builddir() os.environ['LIBRARY_PATH'] = os.path.join(installdir, self.libdir) os.environ['PKG_CONFIG_PATH'] = os.path.join(installdir, self.libdir, 'pkgconfig') - testdir = os.path.join(self.unit_test_dir, '33 external, internal library rpath', 'built library') + testdir = os.path.join(self.unit_test_dir, '38 external, internal library rpath', 'built library') # install into installdir without using DESTDIR self.prefix = self.installdir self.init(testdir) @@ -3707,7 +3707,7 @@ class LinuxCrossArmTests(BasePlatformTests): https://github.com/mesonbuild/meson/issues/3049 https://github.com/mesonbuild/meson/issues/3089 ''' - testdir = os.path.join(self.unit_test_dir, '29 cross file overrides always args') + testdir = os.path.join(self.unit_test_dir, '33 cross file overrides always args') self.meson_cross_file = os.path.join(testdir, 'ubuntu-armhf-overrides.txt') self.init(testdir) compdb = self.get_compdb() @@ -3762,7 +3762,7 @@ class PythonTests(BasePlatformTests): if self.backend is not Backend.ninja: raise unittest.SkipTest('Skipping python tests with {} backend'.format(self.backend.name)) - testdir = os.path.join(self.src_root, 'test cases', 'unit', '32 python extmodule') + testdir = os.path.join(self.src_root, 'test cases', 'unit', '37 python extmodule') # No python version specified, this will use meson's python self.init(testdir) |