code: def test_split_by_worker_empty():
      pytest.importorskip("pyarrow")
  
      df = pd.DataFrame(
          {
              "x": [1, 2, 3, 4, 5],
              "_partition": [0, 1, 2, 0, 1],
          }
      )
      meta = df[["x"]].head(0)
      worker_for = pd.Series({5: "chuck"}, name="_workers").astype(
          "category"
      )
      out = split_by_worker(df, "_partition", meta, worker_for)
      assert out == {}
  
file_path: distributed/distributed/shuffle/tests/test_shuffle_plugins.py
imports: from __future__ import annotations
  from asyncio import iscoroutinefunction
  import pytest
  from distributed.shuffle._scheduler_plugin import ShuffleSchedulerPlugin
  from distributed.shuffle._shuffle import _get_worker_for_range_sharding, split_by_partition, split_by_worker
  from distributed.shuffle._worker_plugin import ShuffleWorkerPlugin
  from distributed.utils_test import gen_cluster
label_desc: Use image node_id 2 for calling a global function with example usage: test_split_by_worker_empty() without return types