diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2017-12-26 13:22:03 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-12-26 13:22:03 +0200 |
commit | 1806aac37669fe5b4a50175b7b8298f119248be3 (patch) | |
tree | f90f7e219fd6cc17f6db45093ae8b0f58f851bec /run_unittests.py | |
parent | d55e98ef50782ff011f2e44d7c13886a3f6b6d05 (diff) | |
parent | 861cbc2e730805ebdea17647f78503a74bd55a34 (diff) | |
download | meson-1806aac37669fe5b4a50175b7b8298f119248be3.zip meson-1806aac37669fe5b4a50175b7b8298f119248be3.tar.gz meson-1806aac37669fe5b4a50175b7b8298f119248be3.tar.bz2 |
Merge pull request #2817 from jon-turney/master
Update prefix-dependent defaults when project(default_options:) changes prefix
Diffstat (limited to 'run_unittests.py')
-rwxr-xr-x | run_unittests.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/run_unittests.py b/run_unittests.py index 17badae..1387130 100755 --- a/run_unittests.py +++ b/run_unittests.py @@ -789,6 +789,45 @@ class AllPlatformTests(BasePlatformTests): self.assertEqual(value, expected[prefix][name]) self.wipe() + def test_default_options_prefix_dependent_defaults(self): + ''' + Tests that setting a prefix in default_options in project() sets prefix + 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') + expected = { + '': + {'prefix': '/usr', + 'sysconfdir': '/etc', + 'localstatedir': '/var', + 'sharedstatedir': '/sharedstate'}, + '--prefix=/usr': + {'prefix': '/usr', + 'sysconfdir': '/etc', + 'localstatedir': '/var', + 'sharedstatedir': '/sharedstate'}, + '--sharedstatedir=/var/state': + {'prefix': '/usr', + 'sysconfdir': '/etc', + 'localstatedir': '/var', + 'sharedstatedir': '/var/state'}, + '--sharedstatedir=/var/state --prefix=/usr --sysconfdir=sysconf': + {'prefix': '/usr', + 'sysconfdir': 'sysconf', + 'localstatedir': '/var', + 'sharedstatedir': '/var/state'}, + } + for args in expected: + self.init(testdir, args.split(), default_args=False) + opts = self.introspect('--buildoptions') + for opt in opts: + name = opt['name'] + value = opt['value'] + if name in expected[args]: + self.assertEqual(value, expected[args][name]) + self.wipe() + def test_static_library_overwrite(self): ''' Tests that static libraries are never appended to, always overwritten. |