From ede1e42db7a9d46a783a63975e2ae3b191d36af8 Mon Sep 17 00:00:00 2001 From: Vecko <36369090+VeckoTheGecko@users.noreply.github.com> Date: Fri, 20 Sep 2024 19:35:40 +0200 Subject: [PATCH] Update `compat` error checking to disallow "minimal" in `concat()` (#9525) * update compat error checking * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- xarray/core/concat.py | 2 +- xarray/tests/test_concat.py | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/xarray/core/concat.py b/xarray/core/concat.py index e137cff257f..b824aabbb23 100644 --- a/xarray/core/concat.py +++ b/xarray/core/concat.py @@ -255,7 +255,7 @@ def concat( except StopIteration as err: raise ValueError("must supply at least one object to concatenate") from err - if compat not in _VALID_COMPAT: + if compat not in set(_VALID_COMPAT) - {"minimal"}: raise ValueError( f"compat={compat!r} invalid: must be 'broadcast_equals', 'equals', 'identical', 'no_conflicts' or 'override'" ) diff --git a/xarray/tests/test_concat.py b/xarray/tests/test_concat.py index f0dcfd462e7..226f376b581 100644 --- a/xarray/tests/test_concat.py +++ b/xarray/tests/test_concat.py @@ -663,6 +663,9 @@ def test_concat_errors(self): with pytest.raises(ValueError, match=r"compat.* invalid"): concat(split_data, "dim1", compat="foobar") + with pytest.raises(ValueError, match=r"compat.* invalid"): + concat(split_data, "dim1", compat="minimal") + with pytest.raises(ValueError, match=r"unexpected value for"): concat([data, data], "new_dim", coords="foobar")