code: def test_higher_dimensions(self, dim):
      n = 100
      points = _sample_sphere(n, dim, seed=0)
      sv = SphericalVoronoi(points)
      assert sv.vertices.shape[1] == dim
      assert len(sv.regions) == n
  
      # verify Euler characteristic
      cell_counts = []
      simplices = np.sort(sv._simplices)
      for i in range(1, dim + 1):
          cells = []
          for indices in itertools.combinations(range(dim), i):
              cells.append(simplices[:, list(indices)])
          cells = np.unique(np.concatenate(cells), axis=0)
          cell_counts.append(len(cells))
      expected_euler = 1 + (-1) ** (dim - 1)
      actual_euler = sum(
          [(-1) ** i * e for i, e in enumerate(cell_counts)]
      )
      assert expected_euler == actual_euler
  
imports: import numpy
  import itertools
  from numpy.testing import assert_equal, assert_almost_equal, assert_array_equal, assert_array_almost_equal
  import pytest
  from pytest import raises
  from scipy.spatial import SphericalVoronoi, distance
  from scipy.optimize import linear_sum_assignment
  from scipy.constants import golden
  from scipy.special import gamma
label_desc: Use image node_id 16 for calling the TestSphericalVoronoi obj's underlying member method code with example usage: obj.test_higher_dimensions(dim) without return types