new_contents: import pytest
  import numpy as np
  import toppra
  import toppra.constraint as constraint
  import matplotlib.pyplot as plt
  
  toppra.setup_logging(level="DEBUG")
  
  try:
      import mosek
      FOUND_MOSEK = True
  except ImportError:
      FOUND_MOSEK = False
  
  try:
      import cvxpy
      FOUND_CXPY = True
  except ImportError:
      FOUND_CXPY = False
  
  
  @pytest.fixture(params=[(0, 0)])
  def vel_accel_robustaccel(request):
      "Velocity + Acceleration + Robust Acceleration constraint"
      dtype_a, dtype_ra = request.param
      vlims = np.array([[-1, 1], [-1, 2], [-1, 4]], dtype=float)
      alims = np.array([[-1, 1], [-1, 2], [-1, 4]], dtype=float)
      vel_cnst = constraint.JointVelocityConstraint(vlims)
      accl_cnst = constraint.JointAccelerationConstraint(alims, dtype_a)
      robust_accl_cnst = constraint.RobustCanonicalLinearConstraint(
          accl_cnst, [1e-4, 1e-4, 5e-4], dtype_ra)
      yield vel_cnst, accl_cnst, robust_accl_cnst
  
  
  @pytest.fixture
  def path():
      np.random.seed(1)
      path = toppra.SplineInterpolator(np.linspace(0, 1, 5), np.random.randn(5, 3))
      yield path
  
  
  def test_toppra_linear(vel_accel_robustaccel, path):
      vel_c, acc_c, ro_acc_c = vel_accel_robustaccel
      instance = toppra.algorithm.TOPPRA([vel_c, acc_c], path)
      traj, _ = instance.compute_trajectory(0, 0)
      assert traj is not None
  
  
  def test_toppra_conic(vel_accel_robustaccel, path):
      vel_c, acc_c, ro_acc_c = vel_accel_robustaccel
      acc_c.set_discretization_type(1)
      ro_acc_c.set_discretization_type(1)
      ro_instance = toppra.algorithm.TOPPRA([vel_c, ro_acc_c], path)
      traj, _ = ro_instance.compute_trajectory(0, 0)
      assert traj is not None
      assert traj.get_duration() < 20 and traj.get_duration() > 0
  
  
subject: add an integration test (toppra algorithm)