aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMathieu Duponchelle <mathieu@centricular.com>2018-04-06 23:48:02 +0200
committerMathieu Duponchelle <mathieu@centricular.com>2018-04-06 23:48:48 +0200
commitae460f94ce7ff97e83d12596a34882c25263e9ef (patch)
treebbf9c7dfa19c1e79b463d9ef75fd8ee3cec8f684
parenta4341b30048a25016bf2950098e498ad1f114410 (diff)
downloadmeson-ae460f94ce7ff97e83d12596a34882c25263e9ef.zip
meson-ae460f94ce7ff97e83d12596a34882c25263e9ef.tar.gz
meson-ae460f94ce7ff97e83d12596a34882c25263e9ef.tar.bz2
[fixup]: Add test
-rwxr-xr-xrun_unittests.py6
-rw-r--r--test cases/unit/26 forcefallback/meson.build8
-rw-r--r--test cases/unit/26 forcefallback/subprojects/notzlib/meson.build7
-rw-r--r--test cases/unit/26 forcefallback/subprojects/notzlib/notzlib.c4
-rw-r--r--test cases/unit/26 forcefallback/subprojects/notzlib/notzlib.h1
-rw-r--r--test cases/unit/26 forcefallback/test_not_zlib.c8
6 files changed, 34 insertions, 0 deletions
diff --git a/run_unittests.py b/run_unittests.py
index 9f0ae3f..3179f9b 100755
--- a/run_unittests.py
+++ b/run_unittests.py
@@ -950,6 +950,12 @@ class AllPlatformTests(BasePlatformTests):
self.uninstall()
self.assertPathDoesNotExist(exename)
+ def test_forcefallback(self):
+ testdir = os.path.join(self.unit_test_dir, '26 forcefallback')
+ self.init(testdir, ['--wrap-mode=forcefallback'])
+ self.build()
+ self.run_tests()
+
def test_testsetups(self):
if not shutil.which('valgrind'):
raise unittest.SkipTest('Valgrind not installed.')
diff --git a/test cases/unit/26 forcefallback/meson.build b/test cases/unit/26 forcefallback/meson.build
new file mode 100644
index 0000000..e6a90ea
--- /dev/null
+++ b/test cases/unit/26 forcefallback/meson.build
@@ -0,0 +1,8 @@
+project('mainproj', 'c',
+ default_options : ['wrap_mode=forcefallback'])
+
+zlib_dep = dependency('zlib', fallback: ['notzlib', 'zlib_dep'])
+
+test_not_zlib = executable('test_not_zlib', ['test_not_zlib.c'], dependencies: [zlib_dep])
+
+test('test_not_zlib', test_not_zlib)
diff --git a/test cases/unit/26 forcefallback/subprojects/notzlib/meson.build b/test cases/unit/26 forcefallback/subprojects/notzlib/meson.build
new file mode 100644
index 0000000..ed1a5b4
--- /dev/null
+++ b/test cases/unit/26 forcefallback/subprojects/notzlib/meson.build
@@ -0,0 +1,7 @@
+project('notzlib', 'c')
+
+notzlib_sources = ['notzlib.c']
+
+notzlib = library('notzlib', notzlib_sources)
+
+zlib_dep = declare_dependency(link_with: notzlib, include_directories: include_directories(['.']), sources: notzlib_sources)
diff --git a/test cases/unit/26 forcefallback/subprojects/notzlib/notzlib.c b/test cases/unit/26 forcefallback/subprojects/notzlib/notzlib.c
new file mode 100644
index 0000000..1b669ec
--- /dev/null
+++ b/test cases/unit/26 forcefallback/subprojects/notzlib/notzlib.c
@@ -0,0 +1,4 @@
+int not_a_zlib_function (void)
+{
+ return 42;
+}
diff --git a/test cases/unit/26 forcefallback/subprojects/notzlib/notzlib.h b/test cases/unit/26 forcefallback/subprojects/notzlib/notzlib.h
new file mode 100644
index 0000000..8cf1bfd
--- /dev/null
+++ b/test cases/unit/26 forcefallback/subprojects/notzlib/notzlib.h
@@ -0,0 +1 @@
+int not_a_zlib_function (void);
diff --git a/test cases/unit/26 forcefallback/test_not_zlib.c b/test cases/unit/26 forcefallback/test_not_zlib.c
new file mode 100644
index 0000000..36256af
--- /dev/null
+++ b/test cases/unit/26 forcefallback/test_not_zlib.c
@@ -0,0 +1,8 @@
+#include <notzlib.h>
+
+int main (int ac, char **av)
+{
+ if (not_a_zlib_function () != 42)
+ return 1;
+ return 0;
+}