code: def test_baseline_replacement_by_shift(
      data: np.ndarray, params: dict, expected: Union[float, dict, bool]
  ):
      # Output
      out = baseline_replacement_by_shift(arr=data, **params)
  
      # Indices
      indices = np.unravel_index(
          params["indices"],
          tuple([data.shape[i] for i in params["indexed_axes"]]),
      )
      if not np.array(indices).ndim > 1:
          indices = [np.array(indices)]
      indices = list(indices)
      for i in range(0, params["indexed_axes"][0]):
          indices = slice(None), *indices
      indices = tuple(indices)
  
      if isinstance(expected, (int, float)):
          assert np.all(
              [i == expected for i in out[indices].flatten()]
          ), f"Test failed.{out}"
  
imports: import pytest
  from pytest_lazyfixture import lazy_fixture
  from quantus.helpers import utils
  from quantus.functions.perturb_func import *
label_desc: Use image node_id 13 for calling a global function with example usage: test_baseline_replacement_by_shift(data, params, expected) without return types