code: def random_dataset(self, n_samples):
      X = self.random_X(n_samples)
  
      y = self.prior(X)
  
      o = self.space.to_tangent(self._oscillation, base_point=y)
      s = X * gs.sin(5.0 * gs.pi * X)
  
      new_y = self.space.metric.exp(s * o, base_point=y)
  
      return X, new_y
  
file_path: geomstats/geomstats/test_cases/learning/wrapped_gaussian_process.py
imports: import pytest
  import geomstats.backend
  from geomstats.test.random import RandomDataGenerator
  from geomstats.test_cases.learning._base import BaseEstimatorTestCase
label_desc: Use image node_id 3 for calling the WrappedGaussianProcessRandomDataGenerator obj's underlying member method code with example usage: obj.random_dataset(n_samples) and returns: X,  new_y