code: def test_tangentspace(self, tspace, get_mats, get_labels):
      n_classes, n_matrices, n_channels = 2, 6, 3
      covmats = get_mats(n_matrices, n_channels, "spd")
      labels = get_labels(n_matrices, n_classes)
      self.clf_transform(tspace, covmats, labels)
      self.clf_fit_transform(tspace, covmats, labels)
      self.clf_fit_transform_independence(tspace, covmats, labels)
      if tspace is TangentSpace:
          self.clf_transform_wo_fit(tspace, covmats)
          self.clf_inversetransform(tspace, covmats)
  
file_path: pyRiemann/tests/test_tangentspace.py
imports: from conftest import get_metrics
  import numpy
  from pyriemann.tangentspace import TangentSpace, FGDA
  import pytest
  from pytest import approx
label_desc: Use image node_id 1 for calling the TangentSpaceTestCase obj's underlying member method code with example usage: obj.test_tangentspace(tspace, get_mats, get_labels) without return types