code: def test_get_imputed_data_noexo(load_pos_data_missing):
      """Tests _get_imputed_data WITHOUT exogenous variables"""
      y = load_pos_data_missing
  
      exp = TSForecastingExperiment()
      FH = 12
  
      ###################################
      # 1: Missing Values Present ####
      ###################################
      # Due to imputation, the imputed values will not be same as original
  
      # 1A: Missing Values Present: Only Imputation Steps in Pipeline ----
      exp.setup(data=y, fh=FH, numeric_imputation_target="drift")
      y_imputed, X_imputed = _get_imputed_data(
          pipeline=exp.pipeline, y=y
      )
      assert not np.array_equal(y_imputed, y)
      assert X_imputed is None
  
      # 1B: Missing Values Present: Imputation + Other Steps in Pipeline ----
      y_imputed_expected = y_imputed.copy()
      exp.setup(
          data=y,
          fh=FH,
          numeric_imputation_target="drift",
          transform_target="exp",
      )
      y_imputed, X_imputed = _get_imputed_data(
          pipeline=exp.pipeline, y=y
      )
      assert not np.array_equal(y_imputed, y)
      assert np.array_equal(y_imputed, y_imputed_expected)
      assert X_imputed is None
  
      #######################################
      # 2: Missing Values not Present ####
      #######################################
      # There are no missing values, so imputation should return original values
  
      y_no_miss = y.copy()
      y_no_miss.fillna(10, inplace=True)
  
      # 2A: Missing Values not Present: No imputation step in Pipeline ----
      exp.setup(data=y_no_miss, fh=FH)
      y_imputed, X_imputed = _get_imputed_data(
          pipeline=exp.pipeline, y=y_no_miss
      )
      assert np.array_equal(y_imputed, y_no_miss)
      assert X_imputed is None
  
      # 2B: Missing Values not Present: Only Imputation Steps in Pipeline ----
      exp.setup(
          data=y_no_miss, fh=FH, numeric_imputation_target="drift"
      )
      y_imputed, X_imputed = _get_imputed_data(
          pipeline=exp.pipeline, y=y_no_miss
      )
      assert np.array_equal(y_imputed, y_no_miss)
      assert X_imputed is None
  
      # 2C: Missing Values not Present: Imputation + Other Steps in Pipeline ----
      exp.setup(
          data=y_no_miss,
          fh=FH,
          numeric_imputation_target="drift",
          transform_target="exp",
      )
      y_imputed, X_imputed = _get_imputed_data(
          pipeline=exp.pipeline, y=y_no_miss
      )
      assert np.array_equal(y_imputed, y_no_miss)
      assert X_imputed is None
  
file_path: pycaret/tests/test_time_series_utils_forecasting_pipeline.py
imports: import numpy
  import pytest
  from sktime.forecasting.naive import NaiveForecaster
  from pycaret.time_series import TSForecastingExperiment
  from pycaret.utils.time_series.forecasting.models import DummyForecaster
  from pycaret.utils.time_series.forecasting.pipeline import _add_model_to_pipeline, _are_pipeline_tansformations_empty, _get_imputed_data, _transformations_present_X, _transformations_present_y
label_desc: Use image node_id 1 for calling a global function with example usage: test_get_imputed_data_noexo(load_pos_data_missing) without return types