code: def test_reconcile_forecasts():
      df = pd.DataFrame(
          {"col1": [1, 2], "col2": [3, 4], "target": [5, 6]}
      )
      df["time_col"] = pd.date_range(
          start="1/1/2010", freq="M", periods=1
      )[0]
      model_args = {
          "order_by": "time_col",
          "group_by": ["col1", "col2"],
          "target": "target",
          "hierarchy": ["col1", "col2"],
      }
  
      training_df, hier_df, hier_dict = get_hierarchy_from_df(
          df, model_args
      )
      forecast_df = pd.DataFrame(
          {"ARIMA": [15, 8, 7, 8, 7]},
          index=[
              "total",
              "total/1",
              "total/2",
              "total/1/3",
              "total/2/4",
          ],
      )
      forecast_df["ds"] = pd.date_range(
          start="1/3/2010", freq="M", periods=1
      )[0]
      forecast_df.index.name = "unique_id"
      results_df = reconcile_forecasts(
          training_df, forecast_df, hier_df, hier_dict
      )
  
      # Check we keep the hierarchically reconciled results, not the original forecast
      assert "ARIMA/BottomUp" in results_df.columns
      assert "ARIMA" not in results_df.columns
  
file_path: mindsdb/tests/unit/ml_handlers/test_time_series_utils.py
imports: import pandas
  from statsforecast.utils import AirPassengersDF
  from mindsdb.integrations.utilities.time_series_utils import transform_to_nixtla_df, get_results_from_nixtla_df, infer_frequency, get_best_model_from_results_df, spec_hierarchy_from_list, get_hierarchy_from_df, reconcile_forecasts
label_desc: Use image node_id 7 for calling a global function with example usage: test_reconcile_forecasts() without return types