about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/gdal/tests.nix
blob: 87fbff2d5fa578b77d893bcf1c1b206a4cf6640a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
{ runCommand, gdal, jdk }:

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 \
      | grep 'GPKG.*GeoPackage'

    ${gdal}/bin/gdalinfo --formats \
      | grep 'GTiff.*GeoTIFF'


    # test vector file
    echo -e "Latitude,Longitude,Name\n48.1,0.25,'Test point'" > test.csv
    ${gdal}/bin/ogrinfo ./test.csv


    # test raster file
    ${gdal}/bin/gdal_create \
      -a_srs "EPSG:4326" \
      -of GTiff \
      -ot UInt16 \
      -a_nodata 255 \
      -burn 0 \
      -outsize 800 600 \
      -co COMPRESS=LZW \
      test.tif

    ${gdal}/bin/gdalinfo ./test.tif

    # test java bindings
    cat <<EOF > main.java
    import org.gdal.gdal.gdal;
    class Main {
      public static void main(String[] args) {
      gdal.AllRegister();
      }
    }
    EOF
    ${jdk}/bin/java -Djava.library.path=${gdal}/lib/ -cp ${gdal}/share/java/gdal-${version}.jar main.java

    touch $out
  ''