docstr: Directional curvature derivative is quadratic in both variables.
code: def test_directional_curvature_derivative_is_quadratic(
      self, n_points, atol
  ):
      """Directional curvature derivative is quadratic in both variables."""
      base_point = self.data_generator.random_point(n_points)
      hor_x = self.data_generator.random_horizontal_vec(base_point)
      hor_y = self.data_generator.random_horizontal_vec(base_point)
  
      coef_x, coef_y = gs.random.uniform(size=(2,))
  
      res = self.space.metric.directional_curvature_derivative(
          coef_x * hor_x, coef_y * hor_y, base_point
      )
      expected = (
          coef_x**2
          * coef_y**2
          * self.space.metric.directional_curvature_derivative(
              hor_x, hor_y, base_point
          )
      )
      self.assertAllClose(res, expected, atol=atol)
  
imports: import pytest
  import geomstats.backend
  from geomstats.geometry.matrices import Matrices
  from geomstats.test.random import KendalShapeRandomDataGenerator, get_random_times
  from geomstats.test.vectorization import generate_vectorization_data
  from geomstats.test_cases.geometry.base import LevelSetTestCase
  from geomstats.test_cases.geometry.fiber_bundle import FiberBundleTestCase
  from geomstats.test_cases.geometry.quotient_metric import QuotientMetricTestCase
  from geomstats.vectorization import get_batch_shape
label_desc: Use image node_id 12 for calling the KendallShapeMetricTestCase obj's underlying member method code with example usage: obj.test_directional_curvature_derivative_is_quadratic(n_points, atol) without return types