[gnome-tetravex/meson-tests] Meson: add tests to validate desktop/appdata files.



commit 3248424c933bb441afa5d0a482b252b080641a7c
Author: Bilal Elmoussaoui <bil elmoussaoui gmail com>
Date:   Sun Jan 20 23:14:41 2019 +0000

    Meson: add tests to validate desktop/appdata files.

 data/meson.build | 25 +++++++++++++++++++++++--
 1 file changed, 23 insertions(+), 2 deletions(-)
---
diff --git a/data/meson.build b/data/meson.build
index a02b39a..3a1702f 100644
--- a/data/meson.build
+++ b/data/meson.build
@@ -11,7 +11,7 @@ install_data (project_id + '.gschema.xml',
               install_dir: join_paths (datadir, 'glib-2.0', 'schemas'))
 meson.add_install_script ('meson_compile_gschema.py')
 
-i18n.merge_file ('desktop-file',
+desktop_file = i18n.merge_file ('desktop-file',
                  input: project_id + '.desktop.in',
                  output: project_id + '.desktop',
                  install: true,
@@ -19,11 +19,32 @@ i18n.merge_file ('desktop-file',
                  po_dir: '../po',
                  type: 'desktop')
 
-i18n.merge_file ('appdata-file',
+desktop_file_validate = find_program('desktop-file-validate', required: false)
+if desktop_file_validate.found()
+  test(
+    'validate-desktop',
+    desktop_file_validate,
+    args: [
+      desktop_file.full_path()
+    ]
+  )
+endif
+
+appdata_file = i18n.merge_file ('appdata-file',
                  input: project_id + '.appdata.xml.in',
                  output: project_id + '.appdata.xml',
                  install: true,
                  install_dir: join_paths (datadir, 'metainfo'),
                  po_dir: '../po')
 
+appstream_util = find_program('appstream-util', required: false)
+if appstream_util.found()
+  test(
+    'validate-appdata', appstream_util,
+    args: [
+      'validate-relax', '--nonet', appdata_file.full_path()
+    ]
+  )
+endif
+
 install_man ('gnome-tetravex.6')


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]