Skip to content

Commit a88b1e4

Browse files
authored
fix(plugins): do no sort query parameters content (#2259)
1 parent 2e6ac19 commit a88b1e4

2 files changed

Lines changed: 17 additions & 5 deletions

File tree

eodag/plugins/search/qssearch.py

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1760,11 +1760,6 @@ def query(
17601760

17611761
qp, _ = self.build_query_string(collection, keywords)
17621762

1763-
# Force sort qp list parameters
1764-
for key in qp:
1765-
if isinstance(qp[key], list) and key != "area":
1766-
qp[key].sort()
1767-
17681763
for query_param, query_value in qp.items():
17691764
if (
17701765
query_param

tests/units/test_search_plugins.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3258,6 +3258,23 @@ def test_plugins_search_ecmwfsearch_dates(self):
32583258
self.assertNotIn("start_datetime", eoproduct.properties)
32593259
self.assertNotIn("end_datetime", eoproduct.properties)
32603260

3261+
def test_plugins_search_ecmwfsearch_dont_sort_params(self):
3262+
"""ECMWFSearch.query must not sort query parameters and keep user order"""
3263+
3264+
results = self.search_plugin.query(
3265+
collection=self.collection,
3266+
**self.query_dates,
3267+
**self.custom_query_params,
3268+
ecmwf_pressure_level=["2", "1", "3", "10"],
3269+
)
3270+
eoproduct = results.data[0]
3271+
self.assertIn("qs", eoproduct.properties)
3272+
self.assertIn("pressure_level", eoproduct.properties["qs"])
3273+
self.assertListEqual(
3274+
eoproduct.properties["qs"]["pressure_level"],
3275+
["2", "1", "3", "10"],
3276+
)
3277+
32613278
def test_plugins_search_ecmwfsearch_with_year_month_day_filter(self):
32623279
"""ECMWFSearch.query must use have datetime in response if year, month, day used in filters"""
32633280
results = self.search_plugin.query(

0 commit comments

Comments
 (0)