code: def test_when_covariates_and_features_present_then_model_can_predict(
      temp_model_path, model_type, data
  ):
      prediction_length = 3
      known_covariates_names = data.columns.drop("target")
      data_train, known_covariates = data.get_model_inputs_for_scoring(
          prediction_length,
          known_covariates_names=known_covariates_names,
      )
  
      feat_gen = TimeSeriesFeatureGenerator(
          target="target", known_covariates_names=known_covariates_names
      )
      data_train = feat_gen.fit_transform(data_train)
  
      model = model_type(
          path=temp_model_path,
          prediction_length=prediction_length,
          freq=data.freq,
          metadata=feat_gen.covariate_metadata,
      )
      model.fit(train_data=data_train, time_limit=10)
      predictions = model.predict(
          data_train, known_covariates=known_covariates
      )
      assert isinstance(predictions, TimeSeriesDataFrame)
      assert (
          len(predictions) == data.num_items * model.prediction_length
      )
  
file_path: autogluon/timeseries/tests/unittests/models/test_mlforecast.py
imports: from unittest import mock
  import numpy
  import pandas
  import pytest
  from autogluon.timeseries import TimeSeriesDataFrame
  from autogluon.timeseries.models.autogluon_tabular.mlforecast import DirectTabularModel, RecursiveTabularModel
  from autogluon.timeseries.utils.features import TimeSeriesFeatureGenerator
  from autogluon.timeseries.utils.forecast import get_forecast_horizon_index_ts_dataframe
  from ..common import DATAFRAME_WITH_COVARIATES, DATAFRAME_WITH_STATIC, DUMMY_VARIABLE_LENGTH_TS_DATAFRAME, get_data_frame_with_variable_lengths
label_desc: Use image node_id 2 for calling a global function with example usage: test_when_covariates_and_features_present_then_model_can_predict(temp_model_path, model_type, data) without return types