diff --git a/py/qsonic/calibration.py b/py/qsonic/calibration.py index 5bd7d93..b78124a 100644 --- a/py/qsonic/calibration.py +++ b/py/qsonic/calibration.py @@ -31,7 +31,8 @@ def add_calibration_parser(parser=None): calib_group.add_argument( "--noise-calibration", help="Noise calibration file.") calib_group.add_argument( - "--varlss-as-additive-noise", help="var_lss as additive noise term.") + "--varlss-as-additive-noise", action="store_true", + help="var_lss as additive noise term.") calib_group.add_argument( "--flux-calibration", help="Flux calibration file.") diff --git a/tests/test_calibration.py b/tests/test_calibration.py index 0bd469e..c18236d 100644 --- a/tests/test_calibration.py +++ b/tests/test_calibration.py @@ -33,6 +33,7 @@ def my_setup_attributes(tmp_path): def test_calibrations(setup_data, my_setup_attributes): fname = my_setup_attributes ncal = qsonic.calibration.NoiseCalibrator(fname) + ncal_plus = qsonic.calibration.NoiseCalibrator(fname, add_varlss=True) fcal = qsonic.calibration.FluxCalibrator(fname) cat_by_survey, _, data = setup_data(1) @@ -45,6 +46,9 @@ def test_calibrations(setup_data, my_setup_attributes): ncal.apply(spectra_list) npt.assert_allclose(spec.forestivar['B'], 0.5) npt.assert_allclose(spec.forestivar['R'], 0.5) + ncal_plus.apply(spectra_list) + npt.assert_allclose(spec.forestivar['B'], 0.2) + npt.assert_allclose(spec.forestivar['R'], 0.2) fcal.apply(spectra_list) npt.assert_allclose(spec.forestflux['B'], f0 / 5) diff --git a/tests/test_qsonic_fit.py b/tests/test_qsonic_fit.py index 88b2a9e..b5d75b7 100644 --- a/tests/test_qsonic_fit.py +++ b/tests/test_qsonic_fit.py @@ -29,6 +29,16 @@ def test_parser(self): x = qsonic.scripts.qsonic_fit.args_logic_fnc_qsonic_fit(args) assert not x + options = ( + "--input-dir indir --catalog incat -o outdir " + "--true-continuum --mock-analysis --fiducial-meanflux mf " + "--fiducial-varlss vs --noise-calibration nc " + "--varlss-as-additive-noise --flux-calibration fc" + ).split(' ') + args = parser.parse_args(options) + x = qsonic.scripts.qsonic_fit.args_logic_fnc_qsonic_fit(args) + assert x + if __name__ == '__main__': pytest.main()