gcab: run & install tests
also add nixosTests.installed-tests.gcab for running the installed tests
This commit is contained in:
parent
c88e084ecb
commit
e253d015a1
4 changed files with 42 additions and 2 deletions
|
@ -67,6 +67,7 @@ in
|
|||
flatpak = callInstalledTest ./flatpak.nix {};
|
||||
flatpak-builder = callInstalledTest ./flatpak-builder.nix {};
|
||||
fwupd = callInstalledTest ./fwupd.nix {};
|
||||
gcab = callInstalledTest ./gcab.nix {};
|
||||
gdk-pixbuf = callInstalledTest ./gdk-pixbuf.nix {};
|
||||
gjs = callInstalledTest ./gjs.nix {};
|
||||
glib-networking = callInstalledTest ./glib-networking.nix {};
|
||||
|
|
5
nixos/tests/installed-tests/gcab.nix
Normal file
5
nixos/tests/installed-tests/gcab.nix
Normal file
|
@ -0,0 +1,5 @@
|
|||
{ pkgs, makeInstalledTest, ... }:
|
||||
|
||||
makeInstalledTest {
|
||||
tested = pkgs.gcab;
|
||||
}
|
|
@ -13,19 +13,25 @@
|
|||
, glib
|
||||
, zlib
|
||||
, gnome3
|
||||
, nixosTests
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gcab";
|
||||
version = "1.3";
|
||||
|
||||
outputs = [ "bin" "out" "dev" "devdoc" ];
|
||||
outputs = [ "bin" "out" "dev" "devdoc" "installedTests" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "1rv81b37d5ya7xpfdxrfk173jjcwabxyng7vafgwyl5myv44qc0h";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# allow installing installed tests to a separate output
|
||||
./installed-tests-path.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
|
@ -45,14 +51,21 @@ stdenv.mkDerivation rec {
|
|||
];
|
||||
|
||||
mesonFlags = [
|
||||
"-Dtests=false"
|
||||
"-Dinstalled_tests=true"
|
||||
"-Dinstalled_test_prefix=${placeholder ''installedTests''}"
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = pname;
|
||||
versionPolicy = "none";
|
||||
};
|
||||
|
||||
tests = {
|
||||
installedTests = nixosTests.installed-tests.gcab;
|
||||
};
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
|
21
pkgs/development/libraries/gcab/installed-tests-path.patch
Normal file
21
pkgs/development/libraries/gcab/installed-tests-path.patch
Normal file
|
@ -0,0 +1,21 @@
|
|||
diff --git a/meson_options.txt b/meson_options.txt
|
||||
index c1b1da1..9b76022 100644
|
||||
--- a/meson_options.txt
|
||||
+++ b/meson_options.txt
|
||||
@@ -4,3 +4,4 @@
|
||||
option('vapi', type : 'boolean', value : true, description: 'generate Vala bindings (requires introspection)')
|
||||
option('tests', type : 'boolean', value : true, description : 'enable tests')
|
||||
option('installed_tests', type : 'boolean', value : false, description : 'install tests for "as-installed" testing')
|
||||
+option('installed_test_prefix', type: 'string', value: '', description: 'Prefix for installed tests')
|
||||
diff --git a/tests/meson.build b/tests/meson.build
|
||||
index 1e46e2a..aa780d0 100644
|
||||
--- a/tests/meson.build
|
||||
+++ b/tests/meson.build
|
||||
@@ -1,5 +1,5 @@
|
||||
-installed_tests_metadir = join_paths(get_option('datadir'), 'installed-tests', 'libgcab-1.0')
|
||||
-installed_tests_execdir = join_paths(get_option('libexecdir'), 'installed-tests', 'libgcab-1.0')
|
||||
+installed_tests_metadir = join_paths(get_option('installed_test_prefix'), 'share', 'installed-tests', 'libgcab-1.0')
|
||||
+installed_tests_execdir = join_paths(get_option('installed_test_prefix'), 'libexec', 'installed-tests', 'libgcab-1.0')
|
||||
installed_tests_enabled = get_option('installed_tests')
|
||||
installed_tests_template_tap = files('template-tap.test.in')
|
||||
abs_installed_tests_execdir = join_paths(get_option('prefix'), installed_tests_execdir)
|
Loading…
Reference in a new issue