From 17d6a993fc17d533460c5f40f3908c708e057c18 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Thu, 23 May 2024 18:45:17 +0200 Subject: Merging upstream version 18.2.3. Signed-off-by: Daniel Baumann --- src/pybind/mgr/tests/test_object_format.py | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) (limited to 'src/pybind/mgr/tests/test_object_format.py') diff --git a/src/pybind/mgr/tests/test_object_format.py b/src/pybind/mgr/tests/test_object_format.py index d2fd20870..2e674c698 100644 --- a/src/pybind/mgr/tests/test_object_format.py +++ b/src/pybind/mgr/tests/test_object_format.py @@ -115,12 +115,18 @@ def test_format_yaml(obj: Any, compatible: bool, yaml_val: str): class Retty: - def __init__(self, v) -> None: + def __init__(self, v, status="") -> None: self.value = v + self.status = status def mgr_return_value(self) -> int: return self.value + def mgr_status_value(self) -> str: + if self.status: + return self.status + return "NOPE" + @pytest.mark.parametrize( "obj, ret", @@ -139,6 +145,24 @@ def test_return_value(obj: Any, ret: int): assert rva.mgr_return_value() == ret +@pytest.mark.parametrize( + "obj, ret", + [ + ({}, ""), + ({"fish": "sticks"}, ""), + (-55, ""), + (Retty(0), "NOPE"), + (Retty(-55, "cake"), "cake"), + (Retty(-50, "pie"), "pie"), + ], +) +def test_return_status(obj: Any, ret: str): + rva = object_format.StatusValueAdapter(obj) + # a StatusValueAdapter instance meets the StatusValueProvider protocol. + assert object_format._is_status_value_provider(rva) + assert rva.mgr_status_value() == ret + + def test_valid_formats(): ofa = object_format.ObjectFormatAdapter({"fred": "wilma"}) vf = ofa.valid_formats() -- cgit v1.2.3