From 6eb4d9d185145667a9d7a00059db49be44c81657 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brigitta=20Sipo=CC=8Bcz?= Date: Sun, 11 Sep 2022 00:04:11 -0700 Subject: [PATCH] Fixing more warnings and removing them from the config --- astroquery/alfalfa/tests/test_alfalfa.py | 4 +++- astroquery/besancon/tests/test_besancon.py | 6 +++--- astroquery/casda/tests/test_casda.py | 13 +++++++---- astroquery/ipac/irsa/ibe/core.py | 7 +++--- astroquery/ipac/ned/tests/test_ned.py | 8 +++++-- astroquery/mast/tests/test_mast.py | 2 +- astroquery/nvas/tests/test_nvas.py | 11 +++++----- astroquery/ogle/tests/test_ogle.py | 7 ++++-- astroquery/vamdc/core.py | 2 +- setup.cfg | 25 +++++++++++----------- 10 files changed, 49 insertions(+), 36 deletions(-) diff --git a/astroquery/alfalfa/tests/test_alfalfa.py b/astroquery/alfalfa/tests/test_alfalfa.py index df767d1823..14bf506805 100644 --- a/astroquery/alfalfa/tests/test_alfalfa.py +++ b/astroquery/alfalfa/tests/test_alfalfa.py @@ -38,7 +38,9 @@ def patch_get_readable_fileobj(request): @contextmanager def get_readable_fileobj_mockreturn(filename, **kwargs): file_obj = data_path(DATA_FILES['spectrum']) # TODO: add images option - yield open(file_obj, 'rb') # read as bytes, assuming FITS + # read as bytes, assuming FITS + with open(file_obj, 'rb') as inputfile: + yield inputfile mp = request.getfixturevalue("monkeypatch") diff --git a/astroquery/besancon/tests/test_besancon.py b/astroquery/besancon/tests/test_besancon.py index bf031f5977..06ef8379af 100644 --- a/astroquery/besancon/tests/test_besancon.py +++ b/astroquery/besancon/tests/test_besancon.py @@ -65,11 +65,11 @@ def get_readable_fileobj_mockreturn(filename, **kwargs): if isinstance(filename, str): if '1376235131.430670' in filename: is_binary = kwargs.get('encoding', None) == 'binary' - file_obj = open(data_path('1376235131.430670.resu'), - "r" + ('b' if is_binary else '')) + with open(data_path('1376235131.430670.resu'), "r" + ('b' if is_binary else '')) as file_obj: + yield file_obj else: file_obj = filename - yield file_obj + yield file_obj mp = request.getfixturevalue("monkeypatch") diff --git a/astroquery/casda/tests/test_casda.py b/astroquery/casda/tests/test_casda.py index 6d0cdd629c..2beb3dc737 100644 --- a/astroquery/casda/tests/test_casda.py +++ b/astroquery/casda/tests/test_casda.py @@ -11,6 +11,7 @@ import astropy.units as u from astropy.table import Table, Column from astropy.io.votable import parse +from astropy.io.votable.exceptions import W03, W50 from astroquery import log import numpy as np @@ -269,7 +270,8 @@ def test_query_region_async_box(patch_get): def test_filter_out_unreleased(): - all_records = parse(data_path('partial_unreleased.xml'), verify='warn').get_first_table().to_table() + with pytest.warns(W03): + all_records = parse(data_path('partial_unreleased.xml'), verify='warn').get_first_table().to_table() assert all_records[0]['obs_release_date'] == '2017-08-02T03:51:19.728Z' assert all_records[1]['obs_release_date'] == '2218-01-02T16:51:00.728Z' assert all_records[2]['obs_release_date'] == '' @@ -331,7 +333,8 @@ def test_stage_data(patch_get): casda = Casda() fake_login(casda, USERNAME, PASSWORD) casda.POLL_INTERVAL = 1 - urls = casda.stage_data(table, verbose=True) + with pytest.warns(W50, match="Invalid unit string 'pixels'"): + urls = casda.stage_data(table, verbose=True) assert urls == ['http://casda.csiro.au/download/web/111-000-111-000/askap_img.fits.checksum', 'http://casda.csiro.au/download/web/111-000-111-000/askap_img.fits'] @@ -348,7 +351,8 @@ def test_cutout(patch_get): casda = Casda() fake_login(casda, USERNAME, PASSWORD) casda.POLL_INTERVAL = 1 - urls = casda.cutout(table, coordinates=centre, radius=radius, verbose=True) + with pytest.warns(W50, match="Invalid unit string 'pixels'"): + urls = casda.cutout(table, coordinates=centre, radius=radius, verbose=True) assert urls == ['http://casda.csiro.au/download/web/111-000-111-000/cutout.fits.checksum', 'http://casda.csiro.au/download/web/111-000-111-000/cutout.fits'] @@ -367,7 +371,8 @@ def test_cutout_no_args(patch_get): casda.POLL_INTERVAL = 1 with pytest.raises(ValueError, match=r"Please provide cutout parameters such as coordinates, band or channel\.") as excinfo: - casda.cutout(table) + with pytest.warns(W50, match="Invalid unit string 'pixels'"): + casda.cutout(table) def test_cutout_unauthorised(patch_get): diff --git a/astroquery/ipac/irsa/ibe/core.py b/astroquery/ipac/irsa/ibe/core.py index 49c4dd063a..407a28b69e 100644 --- a/astroquery/ipac/irsa/ibe/core.py +++ b/astroquery/ipac/irsa/ibe/core.py @@ -8,7 +8,6 @@ https://irsa.ipac.caltech.edu/ibe/ """ - import os import webbrowser from bs4 import BeautifulSoup @@ -270,7 +269,7 @@ def list_missions(self, cache=True): response = self._request('GET', url, timeout=self.TIMEOUT, cache=cache) - root = BeautifulSoup(response.text) + root = BeautifulSoup(response.text, 'html5lib') links = root.findAll('a') missions = [os.path.basename(a.attrs['href'].rstrip('/')) @@ -308,7 +307,7 @@ def list_datasets(self, mission=None, cache=True): response = self._request('GET', url, timeout=self.TIMEOUT, cache=cache) - root = BeautifulSoup(response.text) + root = BeautifulSoup(response.text, 'html5lib') links = root.findAll('a') datasets = [a.text for a in links if a.attrs['href'].count('/') >= 4 # shown as '..'; ignore @@ -362,7 +361,7 @@ def list_tables(self, mission=None, dataset=None, cache=True): response = self._request('GET', url, timeout=self.TIMEOUT, cache=cache) - root = BeautifulSoup(response.text) + root = BeautifulSoup(response.text, 'html5lib') return [tr.find('td').string for tr in root.findAll('tr')[1:]] # Unfortunately, the URL construction for each data set is different, and diff --git a/astroquery/ipac/ned/tests/test_ned.py b/astroquery/ipac/ned/tests/test_ned.py index 71fefaa8c0..d16fbe33a7 100644 --- a/astroquery/ipac/ned/tests/test_ned.py +++ b/astroquery/ipac/ned/tests/test_ned.py @@ -1,6 +1,7 @@ # Licensed under a 3-clause BSD style license - see LICENSE.rst import os +from contextlib import contextmanager from numpy import testing as npt import pytest @@ -47,12 +48,14 @@ def patch_get(request): @pytest.fixture def patch_get_readable_fileobj(request): + @contextmanager def get_readable_fileobj_mockreturn(filename, cache=True, encoding=None, show_progress=True): # Need to read FITS files with binary encoding: should raise error # otherwise assert encoding == 'binary' - return open(data_path(DATA_FILES['image']), 'rb') + with open(data_path(DATA_FILES['image']), 'rb') as infile: + yield infile mp = request.getfixturevalue("monkeypatch") @@ -138,7 +141,8 @@ def test_photometry(patch_get): def test_extract_image_urls(): - html_in = open(data_path(DATA_FILES['extract_urls']), 'r').read() + with open(data_path(DATA_FILES['extract_urls']), 'r') as infile: + html_in = infile.read() url_list = ned.core.Ned._extract_image_urls(html_in) assert len(url_list) == 5 for url in url_list: diff --git a/astroquery/mast/tests/test_mast.py b/astroquery/mast/tests/test_mast.py index 842e20d96f..2ebe5985a9 100644 --- a/astroquery/mast/tests/test_mast.py +++ b/astroquery/mast/tests/test_mast.py @@ -614,7 +614,7 @@ def test_catalogs_query_criteria(patch_post): assert isinstance(result, Table) with pytest.raises(InvalidQueryError) as invalid_query: - mast.Catalogs.query_criteria(catalog="Tic", objectName="M10") + mast.Catalogs.query_criteria(catalog="Tic", objectname="M10") assert "non-positional" in str(invalid_query.value) diff --git a/astroquery/nvas/tests/test_nvas.py b/astroquery/nvas/tests/test_nvas.py index 1606c3ce18..01ada69b64 100644 --- a/astroquery/nvas/tests/test_nvas.py +++ b/astroquery/nvas/tests/test_nvas.py @@ -60,11 +60,11 @@ def patch_get_readable_fileobj(request): def get_readable_fileobj_mockreturn(filename, **kwargs): encoding = kwargs.get('encoding', None) if encoding == 'binary': - file_obj = open(data_path(DATA_FILES["image"]), 'rb') + with open(data_path(DATA_FILES["image"]), 'rb') as file_obj: + yield file_obj else: - file_obj = open(data_path(DATA_FILES["image"]), - "r", encoding=encoding) - yield file_obj + with open(data_path(DATA_FILES["image"]), "r", encoding=encoding) as file_obj: + yield file_obj mp = request.getfixturevalue("monkeypatch") @@ -95,7 +95,8 @@ def test_parse_coordinates(coordinates): def test_extract_image_urls(): - html_in = open(data_path(DATA_FILES['image_search']), 'r').read() + with open(data_path(DATA_FILES['image_search']), 'r') as infile: + html_in = infile.read() image_list = nvas.core.Nvas.extract_image_urls(html_in) assert len(image_list) == 2 diff --git a/astroquery/ogle/tests/test_ogle.py b/astroquery/ogle/tests/test_ogle.py index 895650a092..357393d9cd 100644 --- a/astroquery/ogle/tests/test_ogle.py +++ b/astroquery/ogle/tests/test_ogle.py @@ -5,8 +5,11 @@ import pytest from astropy.coordinates import SkyCoord from astropy import units as u +from astropy.utils.exceptions import AstropyDeprecationWarning + from astroquery.utils.mocks import MockResponse + DATA_FILES = {'gal_0_3': 'gal_0_3.txt'} @@ -49,11 +52,11 @@ def test_ogle_list(patch_post): co_list = [co, co, co] ogle.core.Ogle.query_region(coord=co_list) - def test_ogle_list_values(patch_post): """ Test multiple pointings using a nested-list of decimal degree Galactic coordinates """ co_list = [[0, 0, 0], [3, 3, 3]] - ogle.core.Ogle.query_region(coord=co_list) + with pytest.warns(AstropyDeprecationWarning): + ogle.core.Ogle.query_region(coord=co_list) \ No newline at end of file diff --git a/astroquery/vamdc/core.py b/astroquery/vamdc/core.py index cb90d28ca2..f3fd573f48 100644 --- a/astroquery/vamdc/core.py +++ b/astroquery/vamdc/core.py @@ -13,7 +13,7 @@ __doctest_skip__ = ['VamdcClass.*'] -@deprecated('0.4.2', 'the module relies on an unmaintained library and is' +@deprecated('0.4.2', 'the vamdc astroquery module relies on an unmaintained library and is' 'considered deprecated until completely refactored or upstream' 'is stablised.') @async_to_sync diff --git a/setup.cfg b/setup.cfg index 45a8d376a1..5334541067 100644 --- a/setup.cfg +++ b/setup.cfg @@ -38,26 +38,25 @@ filterwarnings = ignore: Experimental:UserWarning: # This is a temporary measure, all of these should be fixed: ignore:distutils Version classes are deprecated:DeprecationWarning - ignore::pytest.PytestUnraisableExceptionWarning ignore::numpy.VisibleDeprecationWarning ignore:unclosed =4.1