Skip to content

Commit 4f56b67

Browse files
committed
Uses output format value from config as fallback when requesting data
from proxy for AMDA, Fixes #90 Signed-off-by: Alexis Jeandet <alexis.jeandet@member.fsf.org>
1 parent 8e98b82 commit 4f56b67

File tree

2 files changed

+16
-4
lines changed

2 files changed

+16
-4
lines changed

speasy/webservices/amda/utils.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212
import numpy as np
1313
import pandas as pds
14-
14+
from speasy.config import amda as amda_cfg
1515
from speasy.core import epoch_to_datetime64
1616
from speasy.core.datetime_range import DateTimeRange
1717
from speasy.core.http import urlopen_with_retry
@@ -223,4 +223,5 @@ def get_parameter_args(start_time: datetime, stop_time: datetime, product: str,
223223
parameter arguments in dictionary
224224
"""
225225
return {'path': f"amda/{product}", 'start_time': f'{start_time.isoformat()}',
226-
'stop_time': f'{stop_time.isoformat()}', 'output_format': kwargs.get('output_format', 'ASCII')}
226+
'stop_time': f'{stop_time.isoformat()}',
227+
'output_format': kwargs.get('output_format', amda_cfg.output_format.get())}

tests/test_amda.py

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,10 @@
66
import unittest
77
from datetime import datetime, timezone
88

9-
from ddt import data, ddt, unpack
10-
9+
import numpy as np
1110
import speasy as spz
11+
from ddt import data, ddt, unpack
12+
from speasy.config import amda as amda_cfg
1213
from speasy.inventories import flat_inventories
1314
from speasy.products import SpeasyVariable
1415
from speasy.webservices.amda import ProductType
@@ -253,6 +254,16 @@ def test_raises_if_user_passes_unknown_product_kwargs_to_get_data(self):
253254
with self.assertRaises(ValueError):
254255
spz.get_data('amda/This_product_does_not_exist', "2018-01-01", "2018-01-02")
255256

257+
def test_non_regression_CDF_ISTP_with_proxy_and_config(self):
258+
ref = spz.get_data(spz.inventories.tree.amda.Parameters.MMS.MMS1.FPI.fast_mode.mms1_fpi_dismoms.mms1_dis_omni,
259+
"2021-06-01", "2021-06-08T02", output_format='CDF_ISTP')
260+
os.environ[amda_cfg.output_format.env_var_name] = 'CDF_ISTP'
261+
var = spz.get_data(spz.inventories.tree.amda.Parameters.MMS.MMS1.FPI.fast_mode.mms1_fpi_dismoms.mms1_dis_omni,
262+
"2021-06-01", "2021-06-08T02")
263+
self.assertTrue(len(ref.axes), 2)
264+
self.assertTrue(len(var.axes), 2)
265+
self.assertTrue(np.all(var.axes[1].values == ref.axes[1].values))
266+
256267

257268
if __name__ == '__main__':
258269
unittest.main()

0 commit comments

Comments
 (0)