code: def test_celer_path_vs_lasso_path(sparse_X, prune):
      """Test that celer_path matches sklearn lasso_path."""
      X, y = build_dataset(
          n_samples=30, n_features=50, sparse_X=sparse_X
      )
  
      tol = 1e-14
      params = dict(eps=1e-3, n_alphas=10, tol=tol)
      alphas1, coefs1, gaps1 = celer_path(
          X,
          y,
          "lasso",
          return_thetas=False,
          verbose=1,
          prune=prune,
          max_iter=30,
          **params,
      )
  
      alphas2, coefs2, _ = lasso_path(
          X, y, verbose=False, **params, max_iter=10000
      )
  
      assert_allclose(alphas1, alphas2)
      assert_array_less(gaps1, tol * norm(y) ** 2 / len(y))
      assert_allclose(coefs1, coefs2, rtol=1e-03, atol=1e-4)
  
imports: import warnings
  from itertools import product
  import numpy
  from numpy.linalg import norm
  from numpy.testing import assert_allclose, assert_array_less, assert_array_equal
  import pytest
  from sklearn.exceptions import ConvergenceWarning
  from sklearn.linear_model import LassoCV, Lasso, lasso_path
  from celer import celer_path
  from celer.dropin_sklearn import Lasso, LassoCV
  from celer.utils.testing import build_dataset
label_desc: Use image node_id 3 for calling a global function with example usage: test_celer_path_vs_lasso_path(sparse_X, prune) without return types