code: def test_nonfusible_fancy_indexing():
      nil = slice(None)
      cases = [  # x[:, list, :][int, :, :]
          ((nil, [1, 2, 3], nil), (0, nil, nil)),
          # x[int, :, :][:, list, :]
          ((0, nil, nil), (nil, [1, 2, 3], nil)),
          # x[:, list, :, :][:, :, :, int]
          ((nil, [1, 2], nil, nil), (nil, nil, nil, 0)),
      ]
  
      for a, b in cases:
          with pytest.raises(NotImplementedError):
              fuse_slice(a, b)
  
imports: from __future__ import annotations
  import pytest
  import numpy
  import dask
  import dask.array
  from dask.array.chunk import getitem
  from dask.array.core import getter
  from dask.array.core import getter_nofancy
  from dask.array.optimization import _is_getter_task, fuse_slice, optimize, optimize_blockwise, optimize_slices
  from dask.array.utils import assert_eq
  from dask.highlevelgraph import HighLevelGraph
  from dask.optimization import SubgraphCallable, fuse
  from dask.utils import SerializableLock
label_desc: Use image node_id 13 for calling a global function with example usage: test_nonfusible_fancy_indexing() without return types