示例#1
0
def test_get_table():
    table_set = PropertyMock()
    tables_result = [Mock() for _ in range(3)]
    tables_result[0].name = 'tab1'
    tables_result[1].name = 'tab2'
    tables_result[2].name = 'tab3'
    table_set.values.return_value = tables_result

    with patch('astroquery.cadc.core.pyvo.dal.TAPService', autospec=True) as tapservice_mock:
        tapservice_mock.return_value.tables = table_set
        cadc = Cadc()
        assert cadc.get_table('tab2').name == 'tab2'
        assert cadc.get_table('foo') is None
示例#2
0
def test_get_table(monkeypatch):
    dummyTapHandler = DummyTapHandler()
    monkeypatch.setattr(cadc_core, 'get_access_url', get_access_url_mock)
    tap = Cadc(tap_plus_handler=dummyTapHandler)
    # default parameters
    parameters = {}
    parameters['table'] = 'table'
    parameters['verbose'] = False
    tap.get_table('table')
    dummyTapHandler.check_call('get_table', parameters)
    # test with parameters
    dummyTapHandler.reset()
    parameters = {}
    parameters['table'] = 'table'
    parameters['verbose'] = True
    tap.get_table('table', verbose=True)
    dummyTapHandler.check_call('get_table', parameters)
    def test_list_tables(self):
        cadc = Cadc()
        table_names = cadc.get_tables(only_names=True)
        assert len(table_names) > 20
        assert 'caom2.Observation' in table_names
        assert 'ivoa.ObsCore' in table_names
        assert 'tap_schema.tables' in table_names
        tables = cadc.get_tables()
        assert len(table_names) == len(tables)
        for table in tables:
            assert table.name in table_names

        table = cadc.get_table('caom2.Observation')
        assert 'caom2.Observation' == table.name