code: def test_get_silverkite_uncertainty_dict():
      """Testing silverkite_uncertainty_dict."""
      # coverage provided, uncertainty None
      obtained_dict = get_silverkite_uncertainty_dict(
          uncertainty=None, coverage=0.95
      )
      expected_uncertainty = {
          "uncertainty_method": "simple_conditional_residuals",
          "params": {
              "conditional_cols": ["dow_hr"],
              "quantiles": [0.025, 0.975],
              "quantile_estimation_method": "normal_fit",
              "sample_size_thresh": 5,
              "small_sample_size_method": "std_quantiles",
              "small_sample_size_quantile": 0.98,
          },
      }
      assert_equal(obtained_dict, expected_uncertainty)
  
      # coverage provided, uncertainty "auto" (same as above)
      obtained_dict = get_silverkite_uncertainty_dict(
          uncertainty="auto", coverage=0.95
      )
      assert_equal(obtained_dict, expected_uncertainty)
  
      # coverage provided, uncertainty missing quantiles
      coverage = 0.80
      uncertainty_dict = {
          "uncertainty_method": "simple_conditional_residuals"
      }
      obtained_dict = get_silverkite_uncertainty_dict(
          uncertainty=uncertainty_dict, coverage=coverage
      )
      expected_dict = uncertainty_dict.copy()
      expected_dict["params"]["quantiles"] = [0.1, 0.9]
      assert_equal(obtained_dict, expected_dict)
  
      # coverage provided, consistent quantiles
      coverage = 0.80
      uncertainty_dict = {
          "uncertainty_method": "simple_conditional_residuals",
          "params": {
              "conditional_cols": ["dow_hr"],
              "quantiles": [0.1, 0.9],
              "quantile_estimation_method": "normal_fit",
              "sample_size_thresh": 20,
              "small_sample_size_method": "std_quantiles",
              "small_sample_size_quantile": 0.98,
          },
      }
      obtained_dict = get_silverkite_uncertainty_dict(
          uncertainty=uncertainty_dict, coverage=coverage
      )
      assert_equal(obtained_dict, uncertainty_dict)
  
      # coverage missing, uncertainty None
      assert (
          get_silverkite_uncertainty_dict(
              uncertainty=None, coverage=None
          )
          is None
      )
  
      # coverage missing, uncertainty "auto"
      obtained_dict = get_silverkite_uncertainty_dict(
          uncertainty="auto"
      )
      expected_dict = {
          "uncertainty_method": "simple_conditional_residuals",
          "params": {
              "conditional_cols": ["dow_hr"],
              "quantiles": [0.025, 0.975],
              "quantile_estimation_method": "normal_fit",
              "sample_size_thresh": 5,
              "small_sample_size_method": "std_quantiles",
              "small_sample_size_quantile": 0.98,
          },
      }
      assert_equal(obtained_dict, expected_dict)
  
      # coverage missing, uncertainty has quantiles
      obtained_dict = get_silverkite_uncertainty_dict(
          uncertainty=expected_dict
      )
      assert_equal(obtained_dict, expected_dict)
  
file_path: greykite/greykite/tests/algo/forecast/silverkite/test_forecast_silverkite_helper.py
imports: import datetime
  import pandas
  import pytest
  from greykite.algo.forecast.silverkite.forecast_silverkite_helper import get_default_changepoints_dict
  from greykite.algo.forecast.silverkite.forecast_silverkite_helper import get_fourier_feature_col_names
  from greykite.algo.forecast.silverkite.forecast_silverkite_helper import get_silverkite_uncertainty_dict
  from greykite.algo.forecast.silverkite.forecast_silverkite_helper import get_similar_lag
  from greykite.common.features.timeseries_features import fourier_series_multi_fcn
  from greykite.common.python_utils import assert_equal
  from greykite.common.testing_utils import generate_df_for_tests
label_desc: Use image node_id 2 for calling a global function with example usage: test_get_silverkite_uncertainty_dict() without return types