code: def test_split_events_into_dictionaries():
      """Tests split_events_into_dictionaries"""
      countries = ["UnitedStates", "UnitedKingdom", "India", "France"]
      year_start = 2019
      year_end = 2020
      holidays_to_model_separately = [
          "New Year's Day",
          "Christmas Day",
          "Independence Day",
          "Thanksgiving",
          "Labor Day",
          "Good Friday",
          "Easter Monday [England, Wales, Northern Ireland]",
          "Memorial Day",
          "Veterans Day",
      ]
  
      # retrieves separate DataFrame for each country, with list of holidays
      holidays_dict = get_holidays(
          countries, year_start=year_start, year_end=year_end
      )
      # merges country DataFrames, removes duplicate holidays
      holiday_df = dedup_holiday_dict(holidays_dict)
      # creates separate DataFrame for each holiday
      daily_event_df_dict = split_events_into_dictionaries(
          holiday_df,
          holidays_to_model_separately,
          default_category="other",
      )
  
      expected_holidays = [
          holiday.replace("'", "")
          for holiday in holidays_to_model_separately
      ] + ["other"]
      assert set(expected_holidays) == set(daily_event_df_dict.keys())
  
      assert daily_event_df_dict["Christmas Day"].equals(
          pd.DataFrame(
              {
                  EVENT_DF_DATE_COL: [
                      datetime.datetime(2019, 12, 25),
                      datetime.datetime(2020, 12, 25),
                  ],
                  EVENT_DF_LABEL_COL: [
                      EVENT_INDICATOR,
                      EVENT_INDICATOR,
                  ],
              }
          )
      )
  
      assert daily_event_df_dict[
          "Easter Monday [England, Wales, Northern Ireland]"
      ].equals(
          pd.DataFrame(
              {
                  EVENT_DF_DATE_COL: [
                      datetime.datetime(2019, 4, 22),
                      datetime.datetime(2020, 4, 13),
                  ],
                  EVENT_DF_LABEL_COL: [
                      EVENT_INDICATOR,
                      EVENT_INDICATOR,
                  ],
              }
          )
      )
  
      # warns if holiday is not found in the countries
      with pytest.warns(Warning) as record:
          holidays_dict = get_holidays(
              ["UnitedStates", "UnitedKingdom"],
              year_start=year_start,
              year_end=year_end,
          )
          holiday_df = dedup_holiday_dict(holidays_dict)
          split_events_into_dictionaries(
              events_df=holiday_df,
              events=["New Year's Day", "Unknown Holiday"],
              default_category="other",
          )
          assert (
              "Requested holiday 'Unknown Holiday' does not occur in the provided countries"
              in record[0].message.args[0]
          )
  
imports: import datetime
  import pandas
  import pytest
  from greykite.algo.forecast.silverkite.forecast_simple_silverkite_helper import cols_interact
  from greykite.algo.forecast.silverkite.forecast_simple_silverkite_helper import dedup_holiday_dict
  from greykite.algo.forecast.silverkite.forecast_simple_silverkite_helper import generate_holiday_events
  from greykite.algo.forecast.silverkite.forecast_simple_silverkite_helper import get_event_pred_cols
  from greykite.algo.forecast.silverkite.forecast_simple_silverkite_helper import patsy_categorical_term
  from greykite.algo.forecast.silverkite.forecast_simple_silverkite_helper import split_events_into_dictionaries
  from greykite.common.constants import EVENT_DEFAULT
  from greykite.common.constants import EVENT_DF_DATE_COL
  from greykite.common.constants import EVENT_DF_LABEL_COL
  from greykite.common.constants import EVENT_INDICATOR
  from greykite.common.features.timeseries_features import get_holidays
label_desc: Use image node_id 3 for calling a global function with example usage: test_split_events_into_dictionaries() without return types