aboutsummaryrefslogtreecommitdiff
path: root/run_unittests.py
diff options
context:
space:
mode:
Diffstat (limited to 'run_unittests.py')
-rwxr-xr-xrun_unittests.py16
1 files changed, 15 insertions, 1 deletions
diff --git a/run_unittests.py b/run_unittests.py
index 84f9a0a..dc2429a 100755
--- a/run_unittests.py
+++ b/run_unittests.py
@@ -36,7 +36,7 @@ import mesonbuild.coredata
from mesonbuild.interpreter import ObjectHolder
from mesonbuild.mesonlib import is_linux, is_windows, is_osx, is_cygwin, windows_proof_rmtree
from mesonbuild.mesonlib import python_command, meson_command, version_compare
-from mesonbuild.environment import Environment
+from mesonbuild.environment import Environment, detect_ninja
from mesonbuild.mesonlib import MesonException, EnvironmentException
from mesonbuild.dependencies import PkgConfigDependency, ExternalProgram
@@ -1715,6 +1715,20 @@ int main(int argc, char **argv) {
self.assertRegex(out, r'WARNING: a warning of some sort in file meson.build, line 6')
self.assertRegex(out, r'WARNING: subdir warning in file sub' + re.escape(os.path.sep) + r'meson.build, line 4')
+ def test_templates(self):
+ ninja = detect_ninja()
+ if ninja is None:
+ raise unittest.SkipTest('This test currently requires ninja. Fix this once "meson build" works.')
+ for lang in ('c', 'cpp'):
+ for type in ('executable', 'library'):
+ with tempfile.TemporaryDirectory() as tmpdir:
+ self._run(meson_command + ['init', '--language', lang, '--type', type],
+ workdir=tmpdir)
+ self._run(self.meson_command + ['--backend=ninja', 'builddir'],
+ workdir=tmpdir)
+ self._run(ninja,
+ workdir=os.path.join(tmpdir, 'builddir'))
+
class FailureTests(BasePlatformTests):
'''