code: def test_exog_to_direct_when_steps_3_exog_DataFrame_2d_float_int(
      dtype,
  ):
      """
      Test exog_to_direct results when using steps 3 and exog is a
      pandas DataFrame with 2 columns of floats or ints.
      """
      exog = pd.DataFrame(
          {
              "exog_1": np.arange(100, 110, dtype=dtype),
              "exog_2": np.arange(1000, 1010, dtype=dtype),
          }
      )
      results = exog_to_direct(exog=exog, steps=3)
      expected = pd.DataFrame(
          data=np.array(
              [
                  [100, 1000, 101, 1001, 102, 1002],
                  [101, 1001, 102, 1002, 103, 1003],
                  [102, 1002, 103, 1003, 104, 1004],
                  [103, 1003, 104, 1004, 105, 1005],
                  [104, 1004, 105, 1005, 106, 1006],
                  [105, 1005, 106, 1006, 107, 1007],
                  [106, 1006, 107, 1007, 108, 1008],
                  [107, 1007, 108, 1008, 109, 1009],
              ]
          ),
          index=pd.RangeIndex(start=2, stop=10, step=1),
          columns=[
              "exog_1_step_1",
              "exog_2_step_1",
              "exog_1_step_2",
              "exog_2_step_2",
              "exog_1_step_3",
              "exog_2_step_3",
          ],
      ).astype(
          {
              "exog_1_step_1": dtype,
              "exog_2_step_1": dtype,
              "exog_1_step_2": dtype,
              "exog_2_step_2": dtype,
              "exog_1_step_3": dtype,
              "exog_2_step_3": dtype,
          }
      )
  
      pd.testing.assert_frame_equal(results, expected)
  
file_path: skforecast/skforecast/utils/tests/test_exog_to_direct.py
imports: import re
  import pytest
  import numpy
  import pandas
  from skforecast.utils import exog_to_direct
  from pandas.api.types import CategoricalDtype
label_desc: Use image node_id 9 for calling a global function with example usage: test_exog_to_direct_when_steps_3_exog_DataFrame_2d_float_int(dtype) without return types