about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorRobert Schütz <nix@dotlambda.de>2024-02-22 05:21:59 +0000
committerGitHub <noreply@github.com>2024-02-22 05:21:59 +0000
commitf433c05d56393df721d791029402f676d262c399 (patch)
treef277cc90f3dcf78cec51259fee1232c571d89f5e /pkgs
parentddcb80deffbee28dfffb188adb8fcff684179fab (diff)
parentde01ad8151b341b1715337f41da3b6dc05ac8238 (diff)
Merge pull request #290298 from l0b0/gdal-test-separation
gdal: Split tests into separate attributes
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/development/libraries/gdal/default.nix4
-rw-r--r--pkgs/development/libraries/gdal/tests.nix58
2 files changed, 34 insertions, 28 deletions
diff --git a/pkgs/development/libraries/gdal/default.nix b/pkgs/development/libraries/gdal/default.nix
index 64801dd5b714c..5d0fc7a657062 100644
--- a/pkgs/development/libraries/gdal/default.nix
+++ b/pkgs/development/libraries/gdal/default.nix
@@ -270,9 +270,7 @@ stdenv.mkDerivation (finalAttrs: {
     popd # autotest
   '';
 
-  passthru.tests = {
-    gdal = callPackage ./tests.nix { gdal = finalAttrs.finalPackage; };
-  };
+  passthru.tests = callPackage ./tests.nix { gdal = finalAttrs.finalPackage; };
 
   __darwinAllowLocalNetworking = true;
 
diff --git a/pkgs/development/libraries/gdal/tests.nix b/pkgs/development/libraries/gdal/tests.nix
index 87fbff2d5fa57..e6d7673014035 100644
--- a/pkgs/development/libraries/gdal/tests.nix
+++ b/pkgs/development/libraries/gdal/tests.nix
@@ -1,34 +1,40 @@
-{ runCommand, gdal, jdk }:
+{ runCommand, gdal, jdk, lib, testers }:
 
 let
   inherit (gdal) pname version;
 
 in
-runCommand "${pname}-tests" { meta.timeout = 60; }
-  ''
-    # test version
-    ${gdal}/bin/ogrinfo --version \
-      | grep 'GDAL ${version}'
-
-    ${gdal}/bin/gdalinfo --version \
-      | grep 'GDAL ${version}'
-
-
-    # test formats
-    ${gdal}/bin/ogrinfo --formats \
+{
+  ogrinfo-version = testers.testVersion {
+    package = gdal;
+    command = "ogrinfo --version";
+  };
+
+  gdalinfo-version = testers.testVersion {
+    package = gdal;
+    command = "gdalinfo --version";
+  };
+
+  ogrinfo-format-geopackage = runCommand "${pname}-ogrinfo-format-geopackage" { } ''
+    ${lib.getExe' gdal "ogrinfo"} --formats \
       | grep 'GPKG.*GeoPackage'
+    touch $out
+  '';
 
-    ${gdal}/bin/gdalinfo --formats \
+  gdalinfo-format-geotiff = runCommand "${pname}-gdalinfo-format-geotiff" { } ''
+    ${lib.getExe' gdal "gdalinfo"} --formats \
       | grep 'GTiff.*GeoTIFF'
+    touch $out
+  '';
 
-
-    # test vector file
+  vector-file = runCommand "${pname}-vector-file" { } ''
     echo -e "Latitude,Longitude,Name\n48.1,0.25,'Test point'" > test.csv
-    ${gdal}/bin/ogrinfo ./test.csv
-
+    ${lib.getExe' gdal "ogrinfo"} ./test.csv
+    touch $out
+  '';
 
-    # test raster file
-    ${gdal}/bin/gdal_create \
+  raster-file = runCommand "${pname}-raster-file" { } ''
+    ${lib.getExe' gdal "gdal_create"} \
       -a_srs "EPSG:4326" \
       -of GTiff \
       -ot UInt16 \
@@ -38,9 +44,11 @@ runCommand "${pname}-tests" { meta.timeout = 60; }
       -co COMPRESS=LZW \
       test.tif
 
-    ${gdal}/bin/gdalinfo ./test.tif
+    ${lib.getExe' gdal "gdalinfo"} ./test.tif
+    touch $out
+  '';
 
-    # test java bindings
+  java-bindings = runCommand "${pname}-java-bindings" { } ''
     cat <<EOF > main.java
     import org.gdal.gdal.gdal;
     class Main {
@@ -49,7 +57,7 @@ runCommand "${pname}-tests" { meta.timeout = 60; }
       }
     }
     EOF
-    ${jdk}/bin/java -Djava.library.path=${gdal}/lib/ -cp ${gdal}/share/java/gdal-${version}.jar main.java
-
+    ${lib.getExe jdk} -Djava.library.path=${gdal}/lib/ -cp ${gdal}/share/java/gdal-${version}.jar main.java
     touch $out
-  ''
+  '';
+}