diff --git a/CHANGES.rst b/CHANGES.rst index b3da94c6ab..784b7e0d09 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -16,6 +16,12 @@ casda - Add ability to stage and download non image data which have been found through the CASDA obscore table. [#2158] +gaia +^^^^ + +- The bug which caused changing the ``MAIN_GAIA_TABLE`` option to have no + effect has been fixed [#2153] + vizier ^^^^^^ diff --git a/astroquery/gaia/core.py b/astroquery/gaia/core.py index 59c8dafa84..7170f72214 100644 --- a/astroquery/gaia/core.py +++ b/astroquery/gaia/core.py @@ -38,7 +38,7 @@ class GaiaClass(TapPlus): """ Proxy class to default TapPlus object (pointing to Gaia Archive) """ - MAIN_GAIA_TABLE = conf.MAIN_GAIA_TABLE + MAIN_GAIA_TABLE = None MAIN_GAIA_TABLE_RA = conf.MAIN_GAIA_TABLE_RA MAIN_GAIA_TABLE_DEC = conf.MAIN_GAIA_TABLE_DEC ROW_LIMIT = conf.ROW_LIMIT @@ -426,7 +426,7 @@ def __query_object(self, coordinate, radius=None, width=None, height=None, dist ASC """.format(**{'row_limit': "TOP {0}".format(self.ROW_LIMIT) if self.ROW_LIMIT > 0 else "", 'ra_column': self.MAIN_GAIA_TABLE_RA, 'dec_column': self.MAIN_GAIA_TABLE_DEC, - 'columns': columns, 'table_name': self.MAIN_GAIA_TABLE, 'ra': ra, 'dec': dec, + 'columns': columns, 'table_name': self.MAIN_GAIA_TABLE or conf.MAIN_GAIA_TABLE, 'ra': ra, 'dec': dec, 'width': widthDeg.value, 'height': heightDeg.value}) if async_job: job = self.launch_job_async(query, verbose=verbose) @@ -486,7 +486,7 @@ def query_object_async(self, coordinate, radius=None, width=None, """ return self.__query_object(coordinate, radius, width, height, async_job=True, verbose=verbose, columns=columns) - def __cone_search(self, coordinate, radius, table_name=MAIN_GAIA_TABLE, + def __cone_search(self, coordinate, radius, table_name=None, ra_column_name=MAIN_GAIA_TABLE_RA, dec_column_name=MAIN_GAIA_TABLE_DEC, async_job=False, @@ -563,7 +563,7 @@ def __cone_search(self, coordinate, radius, table_name=MAIN_GAIA_TABLE, """.format(**{'ra_column': ra_column_name, 'row_limit': "TOP {0}".format(self.ROW_LIMIT) if self.ROW_LIMIT > 0 else "", 'dec_column': dec_column_name, 'columns': columns, 'ra': ra, 'dec': dec, - 'radius': radiusDeg, 'table_name': table_name}) + 'radius': radiusDeg, 'table_name': table_name or self.MAIN_GAIA_TABLE or conf.MAIN_GAIA_TABLE}) if async_job: return self.launch_job_async(query=query, @@ -580,7 +580,7 @@ def __cone_search(self, coordinate, radius, table_name=MAIN_GAIA_TABLE, dump_to_file=dump_to_file) def cone_search(self, coordinate, radius=None, - table_name=MAIN_GAIA_TABLE, + table_name=None, ra_column_name=MAIN_GAIA_TABLE_RA, dec_column_name=MAIN_GAIA_TABLE_DEC, output_file=None, @@ -631,7 +631,7 @@ def cone_search(self, coordinate, radius=None, dump_to_file=dump_to_file, columns=columns) def cone_search_async(self, coordinate, radius=None, - table_name=MAIN_GAIA_TABLE, + table_name=None, ra_column_name=MAIN_GAIA_TABLE_RA, dec_column_name=MAIN_GAIA_TABLE_DEC, background=False, diff --git a/astroquery/gaia/tests/test_gaiatap.py b/astroquery/gaia/tests/test_gaiatap.py index 53d9ed8f3d..77abccb2ee 100644 --- a/astroquery/gaia/tests/test_gaiatap.py +++ b/astroquery/gaia/tests/test_gaiatap.py @@ -18,6 +18,7 @@ import os import pytest +from astroquery.gaia import conf from astroquery.gaia.core import GaiaClass from astroquery.gaia.tests.DummyTapHandler import DummyTapHandler from astroquery.utils.tap.conn.tests.DummyConnHandler import DummyConnHandler @@ -344,6 +345,21 @@ def test_cone_search_async(self): None, np.int32) + # Regression test for #2093 and #2099 - changing the MAIN_GAIA_TABLE + # had no effect. + # The preceding tests should have used the default value. + assert 'gaiadr2.gaia_source' in job.parameters['query'] + # Test changing the table name through conf. + conf.MAIN_GAIA_TABLE = 'name_from_conf' + job = tap.cone_search_async(sc, radius) + assert 'name_from_conf' in job.parameters['query'] + # Changing the value through the class should overrule conf. + tap.MAIN_GAIA_TABLE = 'name_from_class' + job = tap.cone_search_async(sc, radius) + assert 'name_from_class' in job.parameters['query'] + # Cleanup. + conf.reset('MAIN_GAIA_TABLE') + def __check_results_column(self, results, columnName, description, unit, dataType): c = results[columnName]