code: def test_output_backtesting_forecaster_multiseries_ForecasterAutoregMultiSeries_refit_exog_interval_gap_with_mocked(
      forecaster,
  ):
      """
      Test output of backtesting_forecaster_multiseries in ForecasterAutoregMultiSeries
      and ForecasterAutoregMultiSeriesCustom with refit, gap, allow_incomplete_fold
      False with mocked using exog and intervals (mocked done in Skforecast v0.5.0).
      """
      n_validation = 20
      steps = 5
      gap = 3
  
      (
          metrics_levels,
          backtest_predictions,
      ) = backtesting_forecaster_multiseries(
          forecaster=forecaster,
          series=series,
          steps=steps,
          levels="l1",
          metric="mean_absolute_error",
          initial_train_size=len(series) - n_validation,
          gap=gap,
          allow_incomplete_fold=False,
          refit=True,
          fixed_train_size=False,
          exog=series["l1"].rename("exog_1"),
          interval=[5, 95],
          n_boot=150,
          random_state=123,
          in_sample_residuals=True,
          verbose=False,
      )
  
      expected_metric = pd.DataFrame(
          {"levels": ["l1"], "mean_absolute_error": [0.136188772278576]}
      )
      expected_predictions = pd.DataFrame(
          data=np.array(
              [
                  [0.49730036, 0.21114279, 0.77715089],
                  [0.47420843, 0.264856, 0.7065774],
                  [0.43537767, 0.2249109, 0.66681921],
                  [0.47436444, 0.22133275, 0.70531502],
                  [0.6336613, 0.3459817, 0.86401859],
                  [0.64530446, 0.40972155, 0.88380085],
                  [0.48649557, 0.24491857, 0.72423562],
                  [0.5353094, 0.32581737, 0.77006447],
                  [0.34635064, 0.10940796, 0.55257192],
                  [0.42546209, 0.21943098, 0.66773177],
                  [0.47082006, 0.22579712, 0.7436865],
                  [0.61511518, 0.35650569, 0.90150613],
                  [0.42930559, 0.20426756, 0.64016313],
                  [0.4836202, 0.22363998, 0.74885113],
                  [0.6539521, 0.42099386, 0.91924259],
              ]
          ),
          columns=["l1", "l1_lower_bound", "l1_upper_bound"],
          index=pd.RangeIndex(start=33, stop=48, step=1),
      )
  
      pd.testing.assert_frame_equal(expected_metric, metrics_levels)
      pd.testing.assert_frame_equal(
          expected_predictions, backtest_predictions
      )
  
imports: import re
  import pytest
  import numpy
  import pandas
  from sklearn.linear_model import Ridge
  from sklearn.metrics import mean_absolute_error
  from skforecast.exceptions import IgnoredArgumentWarning
  from skforecast.ForecasterAutoreg import ForecasterAutoreg
  from skforecast.ForecasterAutoregMultiSeries import ForecasterAutoregMultiSeries
  from skforecast.ForecasterAutoregMultiSeriesCustom import ForecasterAutoregMultiSeriesCustom
  from skforecast.ForecasterAutoregMultiVariate import ForecasterAutoregMultiVariate
  from skforecast.model_selection_multiseries import backtesting_forecaster_multiseries
  from skforecast.model_selection_multiseries import backtesting_forecaster_multivariate
  from .fixtures_model_selection_multiseries import series
label_desc: Use image node_id 13 for calling a global function with example usage: test_output_backtesting_forecaster_multiseries_ForecasterAutoregMultiSeries_refit_exog_interval_gap_with_mocked(forecaster) without return types