code: def test_reshape_rechunk(
      inshape, outshape, prechunks, inchunks, outchunks
  ):
      result_in, result_out = reshape_rechunk(
          inshape, outshape, prechunks
      )
      assert result_in == inchunks
      assert result_out == outchunks
      assert np.prod(list(map(len, result_in))) == np.prod(
          list(map(len, result_out))
      )
  
file_path: dask/dask/array/tests/test_reshape.py
imports: from __future__ import annotations
  import numpy
  import pytest
  import dask.array
  from dask.array.reshape import contract_tuple, expand_tuple, reshape_rechunk
  from dask.array.utils import assert_eq
label_desc: Use image node_id 1 for calling a global function with example usage: test_reshape_rechunk(inshape, outshape, prechunks, inchunks, outchunks) without return types