code: def test_null_model(X):
      """Checks null model"""
      model = ProphetEstimator(
          null_model_params={
              "strategy": "quantile",
              "constant": None,
              "quantile": 0.8,
          }
      )
      model.fit(X)
      y = np.repeat(2.0, X.shape[0])
      null_score = model.null_model.score(X, y=y)
      assert null_score == mean_squared_error(
          y, np.repeat(9.0, X.shape[0])
      )
  
      # tests if different score function gets propagated to null model
      model = ProphetEstimator(
          score_func=mean_absolute_error,
          null_model_params={
              "strategy": "quantile",
              "constant": None,
              "quantile": 0.8,
          },
      )
      model.fit(X)
      y = np.repeat(2.0, X.shape[0])
      null_score = model.null_model.score(X, y=y)
      assert null_score == mean_absolute_error(
          y, np.repeat(9.0, X.shape[0])
      )
  
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 11 for calling a global function with example usage: test_null_model(X) without return types