@@ -557,25 +557,55 @@ def test_cone_search_async(self):
557557 'table1_oid' ,
558558 None ,
559559 np .int32 )
560- def test_get_product (self ):
560+
561+ def test_get_product_by_artifactid (self ):
561562 dummyTapHandler = DummyTapHandler ()
562- dummyDataHandler = DummyDataHandler ()
563- jwst = JwstClass (dummyTapHandler , dummyDataHandler )
563+ jwst = JwstClass (dummyTapHandler , dummyTapHandler )
564564 # default parameters
565565 with pytest .raises (ValueError ) as err :
566566 jwst .get_product ();
567- assert "Missing required argument: 'artifact_id'" in err .value .args [0 ]
568-
567+ assert "Missing required argument: 'artifact_id' or 'file_name' " in err .value .args [0 ]
568+
569569 # test with parameters
570- dummyDataHandler .reset ()
570+ dummyTapHandler .reset ()
571+
571572 parameters = {}
572- parameters ['url' ] = dummyDataHandler .base_url + \
573- "RETRIEVAL_TYPE=PRODUCT" + \
574- "&DATA_RETRIEVAL_ORIGIN=ASTROQUERY" + \
575- "&ARTIFACTID=my_artifact_id"
576- jwst .get_product ('my_artifact_id' );
577- dummyDataHandler .check_call ('download_file' , parameters )
578-
573+ parameters ['output_file' ] = 'my_artifact_id'
574+ parameters ['verbose' ] = False
575+
576+ param_dict = {}
577+ param_dict ['RETRIEVAL_TYPE' ] = 'PRODUCT'
578+ param_dict ['DATA_RETRIEVAL_ORIGIN' ] = 'ASTROQUERY'
579+ param_dict ['ARTIFACTID' ] = 'my_artifact_id'
580+ parameters ['params_dict' ] = param_dict
581+
582+ jwst .get_product (artifact_id = 'my_artifact_id' );
583+ dummyTapHandler .check_call ('load_data' , parameters )
584+
585+ def test_get_product_by_filename (self ):
586+ dummyTapHandler = DummyTapHandler ()
587+ jwst = JwstClass (dummyTapHandler , dummyTapHandler )
588+ # default parameters
589+ with pytest .raises (ValueError ) as err :
590+ jwst .get_product ();
591+ assert "Missing required argument: 'artifact_id' or 'file_name'" in err .value .args [0 ]
592+
593+ # test with parameters
594+ dummyTapHandler .reset ()
595+
596+ parameters = {}
597+ parameters ['output_file' ] = 'file_name_id'
598+ parameters ['verbose' ] = False
599+
600+ param_dict = {}
601+ param_dict ['RETRIEVAL_TYPE' ] = 'PRODUCT'
602+ param_dict ['DATA_RETRIEVAL_ORIGIN' ] = 'ASTROQUERY'
603+ param_dict ['ARTIFACT_URI' ] = 'mast:JWST/product/file_name_id'
604+ parameters ['params_dict' ] = param_dict
605+
606+ jwst .get_product (file_name = 'file_name_id' );
607+ dummyTapHandler .check_call ('load_data' , parameters )
608+
579609 def __check_results_column (self , results , columnName , description , unit ,
580610 dataType ):
581611 c = results [columnName ]
0 commit comments