anchor.diff:              pkgs.bindings-gdal
               ] ++ extraPackages pkgs);
   
  -        testProgram = builtins.toFile "TestDataset.hs" ''
  +        testScript = ''
  +          export GDAL_DRIVER_PATH="$(pwd)"
  +          gdalinfo --formats | grep Haskell
  +
  +          export NIX_GHC="${ghc}/bin/ghc"
  +          export NIX_GHCPKG="${ghc}/bin/ghc-pkg"
  +          export NIX_GHC_DOCDIR="${ghc}/share/doc/ghc/html"
  +          export NIX_GHC_LIBDIR="${ghc}/lib/ghc-${ghc.version}"
  +
  +          cp ${testDataset} TestDataset.hs
  +          export GDAL_PLUGIN_HS_UNSAFE=YES
  +          echo $GDAL_DRIVER_PATH
  +          output="$(gdalinfo -stats HS:TestDataset)"
  +          echo $output
  +          echo $output | grep -q "Size is 2550, 1270"
  +          echo $output | grep -q "Block=128x256"
  +          echo $output | grep -q "Type=Float32"
  +          echo $output | grep -q "WGS_1984"
  +          echo $output | grep -q "NoData Value=5"
  +          echo $output \
  +            | grep -q "Minimum=42.000, Maximum=42.000, Mean=42.000, StdDev=0.000"
  +          '';
  +
  +        testDataset = builtins.toFile "TestDataset.hs" ''
             module TestDataset where
             import GDAL
             import OSR ( srsFromEPSG )
  
positive.code: 
            dataset :: HSDatasetFactory
            dataset _ = return HSDataset
              { rasterSize   = 2560 :+: 1280
              , bands        = rasterBands
              , srs          = Just epsg4326
              , geotransform = Geotransform 0 0.001 0 0 0 0.001
  
negative.code: 
        doCheck = true;
  
        checkPhase = testScript;
  
        shellHook = ''
          export GDAL_DRIVER_PATH="$(pwd):$GDAL_DRIVER_PATH"
  