[nautilus] build: add tests for data files



commit a762659d6cbce122e1c1f966947a1a340c0c1ef5
Author: Ernestas Kulik <ernestask gnome org>
Date:   Thu Aug 10 13:20:43 2017 +0300

    build: add tests for data files
    
    This will help avoid potentially breaking pre-release changes in the
    future.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=786104

 data/meson.build |   88 +++++++++++++++++++++++++++++++++---------------------
 1 files changed, 54 insertions(+), 34 deletions(-)
---
diff --git a/data/meson.build b/data/meson.build
index 92dec21..a679997 100644
--- a/data/meson.build
+++ b/data/meson.build
@@ -6,46 +6,46 @@ line_up_parameters = executable ('lineup-parameters',
                                  'lineup-parameters.c',
                                  dependencies: [gio, gio_unix])
 
-i18n.merge_file ('desktop',
-                 input: 'org.gnome.Nautilus.desktop.in',
-                 output: 'org.gnome.Nautilus.desktop',
-                 install: true,
-                 install_dir: desktopdir,
-                 po_dir: po_dir,
-                 type: 'desktop')
+desktop = i18n.merge_file ('desktop',
+                           input: 'org.gnome.Nautilus.desktop.in',
+                           output: 'org.gnome.Nautilus.desktop',
+                           install: true,
+                           install_dir: desktopdir,
+                           po_dir: po_dir,
+                           type: 'desktop')
 
-i18n.merge_file ('desktop-autorun-software',
-                 input: 'nautilus-autorun-software.desktop.in',
-                 output: 'nautilus-autorun-software.desktop',
-                 install: true,
-                 install_dir: desktopdir,
-                 po_dir: po_dir,
-                 type: 'desktop')
+desktop_autorun_software = i18n.merge_file ('desktop-autorun-software',
+                                            input: 'nautilus-autorun-software.desktop.in',
+                                            output: 'nautilus-autorun-software.desktop',
+                                            install: true,
+                                            install_dir: desktopdir,
+                                            po_dir: po_dir,
+                                            type: 'desktop')
 
-i18n.merge_file ('desktop-autostart',
-                 input: 'nautilus-autostart.desktop.in',
-                 output: 'nautilus-autostart.desktop',
-                 install: true,
-                 install_dir: join_paths (sysconfdir, 'xdg', 'autostart'),
-                 po_dir: po_dir,
-                 type: 'desktop')
+desktop_autostart = i18n.merge_file ('desktop-autostart',
+                                     input: 'nautilus-autostart.desktop.in',
+                                     output: 'nautilus-autostart.desktop',
+                                     install: true,
+                                     install_dir: join_paths (sysconfdir, 'xdg', 'autostart'),
+                                     po_dir: po_dir,
+                                     type: 'desktop')
 
 if get_option ('enable-desktop')
-    i18n.merge_file ('desktop',
-                     input: 'nautilus-classic.desktop.in',
-                     output: 'nautilus-classic.desktop',
-                     install: true,
-                     install_dir: desktopdir,
-                     po_dir: po_dir,
-                     type: 'desktop')
+    desktop_classic = i18n.merge_file ('desktop-classic',
+                                       input: 'nautilus-classic.desktop.in',
+                                       output: 'nautilus-classic.desktop',
+                                       install: true,
+                                       install_dir: desktopdir,
+                                       po_dir: po_dir,
+                                       type: 'desktop')
 endif
 
-i18n.merge_file ('desktop',
-                 input: 'org.gnome.Nautilus.appdata.xml.in',
-                 output: 'org.gnome.Nautilus.appdata.xml',
-                 install: true,
-                 install_dir: appdatadir,
-                 po_dir: po_dir,)
+appdata = i18n.merge_file ('appdata',
+                           input: 'org.gnome.Nautilus.appdata.xml.in',
+                           output: 'org.gnome.Nautilus.appdata.xml',
+                           install: true,
+                           install_dir: appdatadir,
+                           po_dir: po_dir,)
 
 service_conf = configuration_data ()
 service_conf.set ('bindir', join_paths (prefix, bindir))
@@ -65,3 +65,23 @@ install_data ('nautilus-search-provider.ini',
 
 install_data ('org.gnome.nautilus.gschema.xml',
               install_dir: schemadir)
+
+desktop_file_validate = find_program ('desktop-file-validate', required: false)
+if desktop_file_validate.found ()
+    test ('validate-desktop', desktop_file_validate,
+          args: [desktop.full_path ()])
+    test ('validate-desktop-autorun-software', desktop_file_validate,
+          args: [desktop_autorun_software.full_path ()])
+    test ('validate-desktop-autostart', desktop_file_validate,
+          args: [desktop_autostart.full_path ()])
+    if get_option ('enable-desktop')
+        test ('validate-desktop-classic', desktop_file_validate,
+          args: [desktop_classic.full_path ()])
+    endif
+endif
+
+appstream_util = find_program ('appstream-util', required: false)
+if appstream_util.found ()
+    test ('validate-appdata', appstream_util,
+          args: ['validate-relax', appdata.full_path ()])
+endif


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