code: def test_tangent_spherical_to_extrinsic_is_tangent(
      self, n_points, atol
  ):
      base_point_spherical = self.intrinsic_data_generator.random_point(
          n_points
      )
      tangent_vec_spherical = (
          self.intrinsic_data_generator.random_tangent_vec(
              base_point_spherical
          )
      )
  
      try:
          tangent_vec = self.space.tangent_spherical_to_extrinsic(
              tangent_vec_spherical,
              base_point_spherical,
          )
      except NotImplementedError:
          return
  
      base_point = self.space.intrinsic_to_extrinsic_coords(
          base_point_spherical
      )
  
      res = self.space_extrinsic.is_tangent(
          tangent_vec, base_point, atol=atol
      )
      expected = gs.ones(n_points, dtype=bool)
      self.assertAllEqual(res, expected)
  
imports: import random
  import pytest
  import scipy
  import geomstats.backend
  from geomstats.learning.frechet_mean import FrechetMean
  from geomstats.test.random import EmbeddedSpaceRandomDataGenerator, HypersphereIntrinsicRandomDataGenerator
  from geomstats.test.test_case import TestCase
  from geomstats.test.vectorization import generate_vectorization_data
  from geomstats.test_cases.geometry.base import LevelSetTestCase
  from geomstats.test_cases.geometry.manifold import ManifoldTestCase
  from geomstats.vectorization import get_batch_shape
label_desc: Use image node_id 13 for calling the HypersphereCoordsTransformTestCase obj's underlying member method code with example usage: obj.test_tangent_spherical_to_extrinsic_is_tangent(n_points, atol) without return types