diff options
author | Sébastien Maret <sebastien.maret@icloud.com> | 2019-07-23 18:44:54 +0200 |
---|---|---|
committer | Frederik Rietdijk <freddyrietdijk@fridh.nl> | 2019-07-27 11:58:50 +0200 |
commit | 1354a2e642d597c5263084594ff36ce7abcf006c (patch) | |
tree | 48002d12d9220483b7a175bbd41acdae4d888497 /pkgs/development/python-modules/astroquery | |
parent | 93a6bba94e4ed2780ad6e2571d9af2d74bba580e (diff) | |
download | nixpkgs-1354a2e642d597c5263084594ff36ce7abcf006c.tar nixpkgs-1354a2e642d597c5263084594ff36ce7abcf006c.tar.gz nixpkgs-1354a2e642d597c5263084594ff36ce7abcf006c.tar.bz2 nixpkgs-1354a2e642d597c5263084594ff36ce7abcf006c.tar.lz nixpkgs-1354a2e642d597c5263084594ff36ce7abcf006c.tar.xz nixpkgs-1354a2e642d597c5263084594ff36ce7abcf006c.tar.zst nixpkgs-1354a2e642d597c5263084594ff36ce7abcf006c.zip |
pythonPackages.astroquery: add checkPhase
Diffstat (limited to 'pkgs/development/python-modules/astroquery')
-rw-r--r-- | pkgs/development/python-modules/astroquery/conftest-astropy-3-fix.patch | 54 | ||||
-rw-r--r-- | pkgs/development/python-modules/astroquery/default.nix | 25 |
2 files changed, 77 insertions, 2 deletions
diff --git a/pkgs/development/python-modules/astroquery/conftest-astropy-3-fix.patch b/pkgs/development/python-modules/astroquery/conftest-astropy-3-fix.patch new file mode 100644 index 00000000000..0b1c7973b59 --- /dev/null +++ b/pkgs/development/python-modules/astroquery/conftest-astropy-3-fix.patch @@ -0,0 +1,54 @@ +diff -ruN astroquery-0.3.9.orig/astroquery/conftest.py astroquery-0.3.9/astroquery/conftest.py +--- astroquery-0.3.9.orig/astroquery/conftest.py 2018-11-27 14:51:16.000000000 +0100 ++++ astroquery-0.3.9/astroquery/conftest.py 2019-07-23 18:19:17.000000000 +0200 +@@ -5,15 +5,20 @@ + # by importing them here in conftest.py they are discoverable by py.test + # no matter how it is invoked within the source tree. + +-from astropy.tests.pytest_plugins import (PYTEST_HEADER_MODULES, +- enable_deprecations_as_exceptions, +- TESTED_VERSIONS) ++from astropy.version import version as astropy_version + +-try: +- packagename = os.path.basename(os.path.dirname(__file__)) +- TESTED_VERSIONS[packagename] = version.version +-except NameError: +- pass ++if astropy_version < '3.0': ++ # With older versions of Astropy, we actually need to import the pytest ++ # plugins themselves in order to make them discoverable by pytest. ++ from astropy.tests.pytest_plugins import * ++else: ++ # As of Astropy 3.0, the pytest plugins provided by Astropy are ++ # automatically made available when Astropy is installed. This means it's ++ # not necessary to import them here, but we still need to import global ++ # variables that are used for configuration. ++ from astropy.tests.plugins.display import PYTEST_HEADER_MODULES, TESTED_VERSIONS ++ ++from astropy.tests.helper import enable_deprecations_as_exceptions + + # Add astropy to test header information and remove unused packages. + # Pytest header customisation was introduced in astropy 1.0. +@@ -36,12 +41,17 @@ + # The warnings_to_ignore_by_pyver parameter was added in astropy 2.0 + enable_deprecations_as_exceptions(modules_to_ignore_on_import=['requests']) + ++# add '_testrun' to the version name so that the user-agent indicates that ++# it's being run in a test ++from . import version ++version.version += '_testrun' ++ ++ + # This is to figure out the affiliated package version, rather than + # using Astropy's +-try: +- from .version import version +-except ImportError: +- version = 'dev' ++from .version import version, astropy_helpers_version ++ + + packagename = os.path.basename(os.path.dirname(__file__)) + TESTED_VERSIONS[packagename] = version ++TESTED_VERSIONS['astropy_helpers'] = astropy_helpers_version diff --git a/pkgs/development/python-modules/astroquery/default.nix b/pkgs/development/python-modules/astroquery/default.nix index b2771505a66..7245b566208 100644 --- a/pkgs/development/python-modules/astroquery/default.nix +++ b/pkgs/development/python-modules/astroquery/default.nix @@ -6,21 +6,42 @@ , keyring , beautifulsoup4 , html5lib +, pytest +, pytest-astropy +, astropy-helpers }: buildPythonPackage rec { pname = "astroquery"; version = "0.3.9"; - doCheck = false; # Tests require the pytest-astropy package - src = fetchPypi { inherit pname version; sha256 = "0zw3xp2rfc6h2v569iqsyvzhfnzp7bfjb7jrj61is1hrqw1cqjrb"; }; + # Fix tests using conftest.py from HEAD in the upstream GitHub + # repository. + patches = [ ./conftest-astropy-3-fix.patch ]; + propagatedBuildInputs = [ astropy requests keyring beautifulsoup4 html5lib ]; + nativeBuildInputs = [ astropy-helpers ]; + + checkInputs = [ pytest pytest-astropy ]; + + # Disable automatic update of the astropy-helper module + postPatch = '' + substituteInPlace setup.cfg --replace "auto_use = True" "auto_use = False" + ''; + + # Tests must be run in the build directory. The tests create files + # in $HOME/.astropy so we need to set HOME to $TMPDIR. + checkPhase = '' + cd build/lib + HOME=$TMPDIR pytest + ''; + meta = with pkgs.lib; { description = "Functions and classes to access online data resources"; homepage = "https://astroquery.readthedocs.io/"; |