aboutsummaryrefslogtreecommitdiff
path: root/run_unittests.py
diff options
context:
space:
mode:
authorNirbheek Chauhan <nirbheek@centricular.com>2020-03-07 00:18:40 +0530
committerXavier Claessens <xclaesse@gmail.com>2020-03-11 07:11:59 -0400
commitbd953b6b2977eb9d9afb92208f117dd8845a3088 (patch)
tree337d2d90634de56e9c6619aa655bc2d362e8fe17 /run_unittests.py
parentc7aa4c8861eb6c1d3534b3b0e94e901b7b2d0206 (diff)
downloadmeson-bd953b6b2977eb9d9afb92208f117dd8845a3088.zip
meson-bd953b6b2977eb9d9afb92208f117dd8845a3088.tar.gz
meson-bd953b6b2977eb9d9afb92208f117dd8845a3088.tar.bz2
coredata: Passing an option is supposed to set it, not flip the default
With the current logic passing `--debug` will actually be parsed as `-Ddebug=false`, which is absolutely not what is expected. There is no case in which the presence of a boolean option in `--foo` form will mean 'I want feature foo disabled', regardless of the *default* value of that option. Also includes a test. Closes https://github.com/mesonbuild/meson/issues/4686
Diffstat (limited to 'run_unittests.py')
-rwxr-xr-xrun_unittests.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/run_unittests.py b/run_unittests.py
index 5b25b6c..41e8ad4 100755
--- a/run_unittests.py
+++ b/run_unittests.py
@@ -3842,6 +3842,14 @@ recommended as it is not supported on some platforms''')
self.assertEqual(opts['debug'], True)
self.assertEqual(opts['optimization'], '2')
self.assertEqual(opts['buildtype'], 'debugoptimized')
+ # Setting both buildtype and debug on the command-line should work
+ # Also test that --debug is parsed as -Ddebug=true
+ self.new_builddir()
+ self.init(testdir, extra_args=['-Dbuildtype=debugoptimized', '--debug'])
+ opts = self.get_opts_as_dict()
+ self.assertEqual(opts['debug'], True)
+ self.assertEqual(opts['optimization'], '2')
+ self.assertEqual(opts['buildtype'], 'debugoptimized')
@skipIfNoPkgconfig
@unittest.skipIf(is_windows(), 'Help needed with fixing this test on windows')