[gnome-shell] build: Run unit tests on `meson test`
- From: Florian Müllner <fmuellner src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell] build: Run unit tests on `meson test`
- Date: Wed, 4 Oct 2017 16:27:45 +0000 (UTC)
commit 4543ca1620d2f641a67a4bb297d653cc2d91fcf0
Author: Florian Müllner <fmuellner gnome org>
Date: Sat Aug 19 10:43:38 2017 +0200
build: Run unit tests on `meson test`
Meson makes it easy to define unit tests, so hook up the existing
ones.
https://bugzilla.gnome.org/show_bug.cgi?id=786497
data/meson.build | 9 ++++++++-
tests/meson.build | 12 +++++++++++-
2 files changed, 19 insertions(+), 2 deletions(-)
---
diff --git a/data/meson.build b/data/meson.build
index 6bc5ae0..032e3f0 100644
--- a/data/meson.build
+++ b/data/meson.build
@@ -78,11 +78,18 @@ install_data('50-gnome-shell-system.xml', install_dir: keysdir)
schemaconf = configuration_data()
schemaconf.set('GETTEXT_PACKAGE', meson.project_name())
-configure_file(
+schema = configure_file(
input: 'org.gnome.shell.gschema.xml.in',
output: 'org.gnome.shell.gschema.xml',
configuration: schemaconf,
install_dir: schemadir
)
+# for unit tests - gnome.compile_schemas() only looks in srcdir
+custom_target('compile-schemas',
+ input: schema,
+ output: 'gschemas.compiled',
+ command: [find_program('glib-compile-schemas'), meson.current_build_dir()],
+ build_by_default: true)
+
install_data('gnome-shell-overrides.convert', install_dir: convertdir)
diff --git a/tests/meson.build b/tests/meson.build
index 91f9cda..a6726f7 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -1,8 +1,18 @@
testconf = configuration_data()
testconf.set('MUTTER_TYPELIB_DIR', mutter_typelibdir)
testconf.set('srcdir', meson.current_source_dir())
-configure_file(
+run_test = configure_file(
input: 'run-test.sh.in',
output: 'run-test.sh',
configuration: testconf
)
+
+testenv = environment()
+testenv.set('GSETTINGS_SCHEMA_DIR', join_paths(meson.build_root(), 'data'))
+
+foreach test : ['insertSorted', 'jsParse', 'markup', 'url']
+ test(test, run_test,
+ args: 'unit/@0@.js'.format(test),
+ env: testenv,
+ workdir: meson.current_source_dir())
+endforeach
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]