def test_get_images(): with patch('astroquery.utils.commons.get_readable_fileobj', autospec=True) as readable_fobj_mock: readable_fobj_mock.return_value = open(data_path('query_images.fits'), 'rb') cadc = Cadc() fits_images = cadc.get_images('08h45m07.5s +54d18m00s', 0.01*u.deg, get_url_list=True) assert fits_images == ['https://some.url'] fits_images = cadc.get_images('08h45m07.5s +54d18m00s', '0.01 deg') assert fits_images is not None assert isinstance(fits_images[0], HDUList)
def test_get_images(self): cadc = Cadc() coords = '08h45m07.5s +54d18m00s' radius = 0.005 * u.deg images = cadc.get_images(coords, radius, collection='CFHT') assert images is not None for image in images: assert isinstance(image, fits.HDUList)
def test_get_images_against_AS(self): cadc = Cadc() coords = '08h45m07.5s +54d18m00s' radius = 0.05 * u.deg # Compare results from cadc advanced search to get_images query = cadc._args_to_payload(**{ 'coordinates': coords, 'radius': radius, 'data_product_type': 'image' })['query'] result = cadc.exec_sync(query) uri_list = [uri.decode('ascii') for uri in result['publisherID']] access_url = 'https://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/en/download' icrs_coords = parse_coordinates(coords).icrs data = { 'uris': ' '.join(uri_list), 'params': 'cutout=Circle ICRS {} {} {}'.format(icrs_coords.ra.degree, icrs_coords.dec.degree, radius.value), 'method': 'URL List' } resp_urls = requests.post(access_url, data).text.split('\r\n') # Filter out the errors and empty strings filtered_resp_urls = list( filter(lambda url: not url.startswith('ERROR') and url != '', resp_urls)) # This function should return nearly the same urls image_urls = cadc.get_images(coords, radius, get_url_list=True) assert len(filtered_resp_urls) == len(image_urls)