code: def test_create_train_X_y_output_when_y_is_series_10_steps_1_and_exog_is_series_of_category():
      """
      Test the output of create_train_X_y when y=pd.Series(np.arange(10)), steps=1
      and exog is a pandas Series of category.
      """
      y = pd.Series(np.arange(10), name="y", dtype=float)
      exog = pd.Series(range(10), name="exog", dtype="category")
  
      forecaster = ForecasterAutoregDirect(
          LinearRegression(), lags=5, steps=1
      )
      results = forecaster.create_train_X_y(y=y, exog=exog)
  
      expected = (
          pd.DataFrame(
              data=np.array(
                  [
                      [4.0, 3.0, 2.0, 1.0, 0.0],
                      [5.0, 4.0, 3.0, 2.0, 1.0],
                      [6.0, 5.0, 4.0, 3.0, 2.0],
                      [7.0, 6.0, 5.0, 4.0, 3.0],
                      [8.0, 7.0, 6.0, 5.0, 4.0],
                  ]
              ),
              index=pd.RangeIndex(start=5, stop=10, step=1),
              columns=["lag_1", "lag_2", "lag_3", "lag_4", "lag_5"],
          ).assign(
              exog_step_1=pd.Categorical(
                  range(5, 10), categories=range(10)
              )
          ),
          {
              1: pd.Series(
                  data=np.array([5.0, 6.0, 7.0, 8.0, 9.0], dtype=float),
                  index=pd.RangeIndex(start=5, stop=10, step=1),
                  name="y_step_1",
              )
          },
      )
  
      pd.testing.assert_frame_equal(results[0], expected[0])
      assert isinstance(results[1], dict)
      assert all(isinstance(x, pd.Series) for x in results[1].values())
      assert results[1].keys() == expected[1].keys()
      for key in expected[1]:
          pd.testing.assert_series_equal(
              results[1][key], expected[1][key]
          )
  
imports: import re
  import pytest
  import numpy
  import pandas
  from skforecast.ForecasterAutoregDirect import ForecasterAutoregDirect
  from skforecast.exceptions import MissingValuesExogWarning
  from sklearn.linear_model import LinearRegression
  from sklearn.compose import ColumnTransformer
  from sklearn.preprocessing import StandardScaler
  from sklearn.preprocessing import OneHotEncoder
label_desc: Use image node_id 17 for calling a global function with example usage: test_create_train_X_y_output_when_y_is_series_10_steps_1_and_exog_is_series_of_category() without return types