code: def test_suppress_methods():
      class FakeClass:
          @return_on_error("Oops!… I Did It Again")
          def some_method(
              self, value, exc: Exception | None = None
          ) -> str:
              if exc:
                  raise exc
              return value
  
          @staticmethod
          @return_on_error(0)
          def some_staticmethod(
              value, exc: Exception | None = None
          ) -> int:
              if exc:
                  raise exc
              return value
  
          @classmethod
          @return_on_error("It's fine")
          def some_classmethod(
              cls, value, exc: Exception | None = None
          ) -> str:
              if exc:
                  raise exc
              return value
  
      assert FakeClass().some_method("no-error") == "no-error"
      assert FakeClass.some_staticmethod(42) == 42
      assert (
          FakeClass.some_classmethod("really-no-error-here")
          == "really-no-error-here"
      )
  
      assert (
          FakeClass().some_method("foo", KeyError("foo"))
          == "Oops!… I Did It Again"
      )
      assert FakeClass.some_staticmethod(42, RuntimeError("bar")) == 0
      assert (
          FakeClass.some_classmethod(
              "bar", OSError("Windows detected!")
          )
          == "It's fine"
      )
  
imports: from __future__ import annotations
  import pytest
  from airflow.providers.amazon.aws.utils.suppress import return_on_error
label_desc: Use image node_id 2 for calling a global function with example usage: test_suppress_methods() and returns: value, value, value