code: def test_shard_df_on_index():
      df = pd.DataFrame(
          {"x": [1, 2, 3, 4, 5, 6], "y": list("abdabd")},
          index=[10, 20, 30, 40, 50, 60],
      )
  
      result = list(shard_df_on_index(df, [20, 50]))
      assert list(result[0].index) == [10]
      assert list(result[1].index) == [20, 30, 40]
      assert list(result[2].index) == [50, 60]
  
imports: from __future__ import annotations
  import re
  import warnings
  from collections.abc import Iterable
  import numpy
  import pandas
  import pytest
  from packaging.version import Version
  import dask
  import dask.dataframe
  from dask.dataframe._compat import PANDAS_GE_200, tm
  from dask.dataframe.core import apply_and_enforce
  from dask.dataframe.utils import UNKNOWN_CATEGORIES, assert_eq, check_matching_columns, check_meta, is_dataframe_like, is_index_like, is_series_like, make_meta, meta_frame_constructor, meta_nonempty, meta_series_constructor, pyarrow_strings_enabled, raise_on_meta_error, shard_df_on_index, valid_divisions
  from dask.local import get_sync
label_desc: Use image node_id 1 for calling a global function with example usage: test_shard_df_on_index() without return types