code: def test_prophet_setup(params, X):
      """Checks if parameters are passed to Prophet correctly"""
      coverage = 0.99
      model = ProphetEstimator(
          score_func=mean_squared_error,
          coverage=coverage,
          null_model_params=None,
          **params,
      )
  
      # set_params must be able to replicate the init
      model2 = ProphetEstimator()
      model2.set_params(
          **dict(
              score_func=mean_squared_error,
              coverage=coverage,
              null_model_params=None,
              **params,
          )
      )
      assert model2.__dict__ == model.__dict__
  
      model.fit(X)
      direct_model = prophet.Prophet(**params)
  
      model_params = model.model.__dict__
      direct_model_params = direct_model.__dict__
  
      # only need to check these
      assert model_params["growth"] == direct_model_params["growth"]
      assert model_params["changepoints"].equals(
          direct_model_params["changepoints"]
      )
      assert (
          model_params["n_changepoints"]
          == direct_model_params["n_changepoints"]
      )
      assert (
          model_params["specified_changepoints"]
          == direct_model_params["specified_changepoints"]
      )
      assert (
          model_params["changepoint_range"]
          == direct_model_params["changepoint_range"]
      )
      assert (
          model_params["yearly_seasonality"]
          == direct_model_params["yearly_seasonality"]
      )
      assert (
          model_params["weekly_seasonality"]
          == direct_model_params["weekly_seasonality"]
      )
      assert (
          model_params["daily_seasonality"]
          == direct_model_params["daily_seasonality"]
      )
      assert model_params["holidays"].equals(
          direct_model_params["holidays"]
      )
      assert (
          model_params["seasonality_mode"]
          == direct_model_params["seasonality_mode"]
      )
      assert (
          model_params["seasonality_prior_scale"]
          == direct_model_params["seasonality_prior_scale"]
      )
      assert (
          model_params["changepoint_prior_scale"]
          == direct_model_params["changepoint_prior_scale"]
      )
      assert (
          model_params["holidays_prior_scale"]
          == direct_model_params["holidays_prior_scale"]
      )
      assert (
          model_params["mcmc_samples"]
          == direct_model_params["mcmc_samples"]
      )
      assert (
          model_params["uncertainty_samples"]
          == direct_model_params["uncertainty_samples"]
      )
  
      # interval width is set by coverage
      assert model_params["interval_width"] == coverage
  
imports: import sys
  import numpy
  import pandas
  import pytest
  from sklearn.exceptions import NotFittedError
  from sklearn.metrics import mean_absolute_error
  from sklearn.metrics import mean_squared_error
  from testfixtures import LogCapture
  from greykite.common.constants import LOGGER_NAME
  from greykite.common.constants import PREDICTED_COL
  from greykite.common.constants import PREDICTED_LOWER_COL
  from greykite.common.constants import PREDICTED_UPPER_COL
  from greykite.common.constants import TIME_COL
  from greykite.common.constants import VALUE_COL
  from greykite.common.evaluation import EvaluationMetricEnum
  from greykite.common.evaluation import calc_pred_err
  from greykite.common.python_utils import assert_equal
  from greykite.common.testing_utils import generate_df_for_tests
  from greykite.common.testing_utils import generate_df_with_reg_for_tests
  from greykite.sklearn.estimator.prophet_estimator import ProphetEstimator
label_desc: Use image node_id 9 for calling a global function with example usage: test_prophet_setup(params, X) without return types