-
Notifications
You must be signed in to change notification settings - Fork 19
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #91 from desihub/scipy-integration-and-other-fixes
Scipy integration and other fixes
- Loading branch information
Showing
12 changed files
with
134 additions
and
57 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
# this contains imports plugins that configure py.test for astropy tests. | ||
# 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.version import version as astropy_version | ||
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 pytest_astropy_header.display import PYTEST_HEADER_MODULES, TESTED_VERSIONS | ||
|
||
from astropy.tests.helper import enable_deprecations_as_exceptions | ||
|
||
## Uncomment the following line to treat all DeprecationWarnings as | ||
## exceptions | ||
# enable_deprecations_as_exceptions() | ||
|
||
## Uncomment and customize the following lines to add/remove entries from | ||
## the list of packages for which version numbers are displayed when running | ||
## the tests. Making it pass for KeyError is essential in some cases when | ||
## the package uses other astropy affiliated packages. | ||
try: | ||
PYTEST_HEADER_MODULES['Astropy'] = 'astropy' | ||
PYTEST_HEADER_MODULES['Pillow'] = 'PIL' | ||
PYTEST_HEADER_MODULES['PyYAML'] = 'yaml' | ||
del PYTEST_HEADER_MODULES['h5py'] | ||
del PYTEST_HEADER_MODULES['Pandas'] | ||
except (NameError, KeyError): # NameError is needed to support Astropy < 1.0 | ||
pass | ||
|
||
## Uncomment the following lines to display the version number of the | ||
## package rather than the version number of Astropy in the top line when | ||
## running the tests. | ||
# import os | ||
# | ||
## This is to figure out the affiliated package version, rather than | ||
## using Astropy's | ||
# try: | ||
# from .version import version | ||
# except ImportError: | ||
# version = 'dev' | ||
# | ||
# try: | ||
# packagename = os.path.basename(os.path.dirname(__file__)) | ||
# TESTED_VERSIONS[packagename] = version | ||
# except NameError: # Needed to support Astropy <= 1.0.0 | ||
# pass |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
import os | ||
from ..utils import package_data | ||
|
||
|
||
def test_get_path_of_data_file(): | ||
data_file = package_data.get_path_of_data_file('filters/twomass-Ks.ecsv') | ||
assert os.path.exists(data_file) | ||
|
||
|
||
def test_get_path_of_data_dir(): | ||
data_dir = package_data.get_path_of_data_dir() | ||
assert os.path.isdir(data_dir) | ||
|
||
|
||
def test_get_path_of_data_dir_no_importlib(monkeypatch): | ||
data_dir = package_data.get_path_of_data_dir() | ||
def mock_resource(foo, bar): | ||
return data_dir | ||
monkeypatch.setattr(package_data, '_has_importlib', False) | ||
monkeypatch.setattr(package_data, 'resource_filename', mock_resource) | ||
data_dir2 = package_data.get_path_of_data_dir() | ||
assert data_dir2 == data_dir |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,24 @@ | ||
import os | ||
|
||
import pkg_resources | ||
_has_importlib = True | ||
try: | ||
from importlib.resources import files | ||
resource_filename = None | ||
except ImportError: | ||
from pkg_resources import resource_filename | ||
_has_importlib = False | ||
|
||
# TODO: should make these Path objects | ||
|
||
def get_path_of_data_file(data_file) -> str: | ||
def get_path_of_data_file(data_file): | ||
"""convenience wrapper to return location of data file | ||
""" | ||
file_path = pkg_resources.resource_filename( | ||
"speclite", os.path.join("data", f"{data_file}")) | ||
return os.path.join(get_path_of_data_dir(), data_file) | ||
|
||
return file_path | ||
|
||
|
||
def get_path_of_data_dir() -> str: | ||
def get_path_of_data_dir(): | ||
"""convenience wrapper to return location of data directory | ||
""" | ||
file_path = pkg_resources.resource_filename("speclite", "data") | ||
|
||
return file_path | ||
if _has_importlib: | ||
return str(files('speclite') / 'data') | ||
return resource_filename('speclite', 'data') |