code: def test_geodesic_wrapper_ndarray(metric, get_mats):
      n_matrices, n_channels = 5, 3
      A = get_mats(n_matrices, n_channels, "spd")
      B = get_mats(n_matrices, n_channels, "spd")
      assert (
          geodesic(A[0], B[0], 0.3, metric=metric).shape == A[0].shape
      )
      assert (
          geodesic(A, B, 0.2, metric=metric).shape == A.shape
      )  # 3D arrays
  
      n_sets = 4
      C = np.asarray([A for _ in range(n_sets)])
      D = np.asarray([B for _ in range(n_sets)])
      assert geodesic(C, D, 0.7, metric=metric).shape == C.shape
  
file_path: pyRiemann/tests/test_utils_geodesic.py
imports: import numpy
  import pytest
  from pytest import approx
  from pyriemann.utils.geodesic import geodesic, geodesic_euclid, geodesic_logeuclid, geodesic_riemann
  from pyriemann.utils.mean import mean_euclid, mean_logeuclid, mean_riemann
label_desc: Use image node_id 9 for calling a global function with example usage: test_geodesic_wrapper_ndarray(metric, get_mats) without return types