diff --git a/pkgs/development/python-modules/geoarrow-rust/default.nix b/pkgs/development/python-modules/geoarrow-rust/default.nix index f7c5413a6fc4..8bb08b06c22b 100644 --- a/pkgs/development/python-modules/geoarrow-rust/default.nix +++ b/pkgs/development/python-modules/geoarrow-rust/default.nix @@ -5,11 +5,21 @@ rustPlatform, pytestCheckHook, arro3-core, - pyarrow, - pyproj, + obstore, + + # tests + arro3-compute, + arro3-io, + geoarrow-types, + geodatasets, + geopandas, numpy, pandas, - geoarrow-types, + pyarrow, + pyogrio, + pyproj, + pytest-asyncio, + shapely, }: let version = "0.6.1"; @@ -100,6 +110,7 @@ let pythonImportsCheck = [ "geoarrow.rust.io" ]; dependencies = [ arro3-core + obstore pyproj ]; }; @@ -113,16 +124,40 @@ let dontInstall = true; nativeCheckInputs = [ - pytestCheckHook - geoarrow-types - pandas - pyarrow - numpy + arro3-compute + arro3-io geoarrow-rust-core geoarrow-rust-io + geoarrow-types + geodatasets + geopandas + numpy + obstore + pandas + pyarrow + pyogrio + pytest-asyncio + pytestCheckHook + shapely ]; - pytestFlags = [ "python" ]; + # use the latest test folder (skips the tests_old folder) + pytestFlags = [ "python/tests" ]; + + disabledTests = [ + # require internet access to download datasets + "test_parse_nybb" + "test_parse_nybb_chunked" + "test_getitem" + "test_geo_interface_polygon" + "test_parquet_file" + ]; + + # fix the directory name, as it is named as source for nix build + postPatch = '' + substituteInPlace python/tests/utils.py \ + --replace-fail 'while current_dir.stem != "geoarrow-rs":' 'while current_dir.stem != "source":' + ''; }; in {