diff --git a/dask/array/__init__.py b/dask/array/__init__.py
--- a/dask/array/__init__.py
+++ b/dask/array/__init__.py
@@ -108,6 +108,7 @@
         dstack,
         ediff1d,
         einsum,
+        expand_dims,
         extract,
         flatnonzero,
         flip,
diff --git a/dask/array/routines.py b/dask/array/routines.py
--- a/dask/array/routines.py
+++ b/dask/array/routines.py
@@ -1883,6 +1883,20 @@ def ravel(array_like):
     return asanyarray(array_like).reshape((-1,))
 
 
+@derived_from(np)
+def expand_dims(a, axis):
+    if type(axis) not in (tuple, list):
+        axis = (axis,)
+
+    out_ndim = len(axis) + a.ndim
+    axis = validate_axis(axis, out_ndim)
+
+    shape_it = iter(a.shape)
+    shape = [1 if ax in axis else next(shape_it) for ax in range(out_ndim)]
+
+    return a.reshape(shape)
+
+
 @derived_from(np)
 def squeeze(a, axis=None):
     if axis is None:

diff --git a/dask/array/tests/test_routines.py b/dask/array/tests/test_routines.py
--- a/dask/array/tests/test_routines.py
+++ b/dask/array/tests/test_routines.py
@@ -4,6 +4,7 @@
 from numbers import Number
 
 import pytest
+from numpy import AxisError
 
 from dask.delayed import delayed
 
@@ -1413,6 +1414,25 @@ def test_ravel_with_array_like():
     assert isinstance(da.ravel([(0,), (0,)]), da.core.Array)
 
 
+@pytest.mark.parametrize("axis", [None, 0, 1, -1, (0, 1), (0, 2), (1, 2), 2])
+def test_expand_dims(axis):
+    a = np.arange(10)
+    d = da.from_array(a, chunks=(3,))
+
+    if axis is None:
+        with pytest.raises(TypeError):
+            da.expand_dims(d, axis=axis)
+    elif axis == 2:
+        with pytest.raises(AxisError):
+            da.expand_dims(d, axis=axis)
+    else:
+        a_e = np.expand_dims(a, axis=axis)
+        d_e = da.expand_dims(d, axis=axis)
+
+        assert_eq(d_e, a_e)
+        assert same_keys(d_e, da.expand_dims(d, axis=axis))
+
+
 @pytest.mark.parametrize("is_func", [True, False])
 @pytest.mark.parametrize("axis", [None, 0, -1, (0, -1)])
 def test_squeeze(is_func, axis):

Add `expand_dims` to Dask array
Dask is missing the NumPy [`expand_dims`](https://numpy.org/doc/stable/reference/generated/numpy.expand_dims.html) function. This is needed for the Array API (https://github.com/dask/community/issues/109).

dask/array/tests/test_routines.py::test_expand_dims[None] dask/array/tests/test_routines.py::test_expand_dims[axis6] dask/array/tests/test_routines.py::test_expand_dims[axis4] dask/array/tests/test_routines.py::test_expand_dims[2] dask/array/tests/test_routines.py::test_expand_dims[0] dask/array/tests/test_routines.py::test_expand_dims[axis5] dask/array/tests/test_routines.py::test_expand_dims[1] dask/array/tests/test_routines.py::test_expand_dims[-1]
dask/array/tests/test_routines.py::test_ravel_multi_index[arr1-chunks1-kwargs1-<lambda>1] dask/array/tests/test_routines.py::test_apply_over_axes[shape0-axes0-sum1-<lambda>] dask/array/tests/test_routines.py::test_histogram2d[bins0-False-True] dask/array/tests/test_routines.py::test_ptp[shape0-None] dask/array/tests/test_routines.py::test_atleast_nd_one_arg[shape2-chunks2-atleast_2d] dask/array/tests/test_routines.py::test_searchsorted[left-a0-1-v0-1] dask/array/tests/test_routines.py::test_roll[axis4-3-chunks0] dask/array/tests/test_routines.py::test_squeeze[0-False] dask/array/tests/test_routines.py::test_histogram_delayed_range[False-None-False-True] dask/array/tests/test_routines.py::test_histogram_delayed_range[True-None-True-True] dask/array/tests/test_routines.py::test_union1d[False-shape2] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape16-shape26-atleast_3d] dask/array/tests/test_routines.py::test_flip[shape3-flip-kwargs4] dask/array/tests/test_routines.py::test_ravel_multi_index[arr3-chunks3-kwargs3-<lambda>0] dask/array/tests/test_routines.py::test_outer[shape11-shape21] dask/array/tests/test_routines.py::test_histogram_delayed_range[True-1-True-False] dask/array/tests/test_routines.py::test_atleast_nd_one_arg[shape3-chunks3-atleast_1d] dask/array/tests/test_routines.py::test_rot90[shape2-kwargs0] dask/array/tests/test_routines.py::test_ravel_multi_index[arr0-chunks0-kwargs0-<lambda>1] dask/array/tests/test_routines.py::test_flip[shape3-fliplr-kwargs1] dask/array/tests/test_routines.py::test_histogram_bin_range_raises[10-hist_range5] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape114-shape214-atleast_2d] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape18-shape28-atleast_2d] dask/array/tests/test_routines.py::test_count_nonzero_obj_axis[axis2] dask/array/tests/test_routines.py::test_diff_prepend[1] dask/array/tests/test_routines.py::test_transpose_negative_axes dask/array/tests/test_routines.py::test_unique_rand[shape3-chunks3-0-10-796] dask/array/tests/test_routines.py::test_count_nonzero_obj dask/array/tests/test_routines.py::test_diff[2-shape3--1] dask/array/tests/test_routines.py::test_rot90[shape4-kwargs0] dask/array/tests/test_routines.py::test_apply_over_axes[shape3-axes3-sum1-<lambda>] dask/array/tests/test_routines.py::test_flip[shape0-flip-kwargs2] dask/array/tests/test_routines.py::test_apply_along_axis[input_shape2-2-range2-<lambda>-False] dask/array/tests/test_routines.py::test_ravel_with_array_like dask/array/tests/test_routines.py::test_unravel_index_empty dask/array/tests/test_routines.py::test_union1d[True-shape0] dask/array/tests/test_routines.py::test_matmul[x_shape6-y_shape6-x_chunks6-y_chunks6] dask/array/tests/test_routines.py::test_histogram_delayed_range[False-1-False-True] dask/array/tests/test_routines.py::test_apply_along_axis[input_shape1-1-cumsum-<lambda>-True] dask/array/tests/test_routines.py::test_unique_kwargs[False-True-True] dask/array/tests/test_routines.py::test_histogram_delayed_bins[True-True] dask/array/tests/test_routines.py::test_unique_rand[shape0-chunks0-0-10-23] dask/array/tests/test_routines.py::test_atleast_nd_one_arg[shape3-chunks3-atleast_3d] dask/array/tests/test_routines.py::test_squeeze[axis3-False] dask/array/tests/test_routines.py::test_atleast_nd_one_arg[shape0-chunks0-atleast_2d] dask/array/tests/test_routines.py::test_coarsen_bad_chunks[chunks13] dask/array/tests/test_routines.py::test_apply_along_axis[input_shape1-1-sum-<lambda>-False] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape13-shape23-atleast_2d] dask/array/tests/test_routines.py::test_moveaxis_rollaxis[shape2-rollaxis] dask/array/tests/test_routines.py::test_compress dask/array/tests/test_routines.py::test_diff_append[1] dask/array/tests/test_routines.py::test_apply_along_axis[input_shape0-0-range-<lambda>-False] dask/array/tests/test_routines.py::test_ediff1d[None-None-shape0] dask/array/tests/test_routines.py::test_count_nonzero_obj_axis[None] dask/array/tests/test_routines.py::test_iscomplexobj dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape111-shape211-atleast_2d] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape114-shape214-atleast_3d] dask/array/tests/test_routines.py::test_ptp[shape1-0] dask/array/tests/test_routines.py::test_diff[1-shape2-2] dask/array/tests/test_routines.py::test_matmul[x_shape29-y_shape29-x_chunks29-y_chunks29] dask/array/tests/test_routines.py::test_apply_along_axis[input_shape0-0-ndim-<lambda>-False] dask/array/tests/test_routines.py::test_squeeze[axis3-True] dask/array/tests/test_routines.py::test_extract dask/array/tests/test_routines.py::test_searchsorted[right-a2-3-v2-2] dask/array/tests/test_routines.py::test_tril_triu_indices[5-0-5-1] dask/array/tests/test_routines.py::test_ravel_multi_index[arr7-None-kwargs7-<lambda>2] dask/array/tests/test_routines.py::test_flip[shape1-fliplr-kwargs1] dask/array/tests/test_routines.py::test_apply_along_axis[input_shape3--1-cumsum-<lambda>-True] dask/array/tests/test_routines.py::test_histogramdd_raises_incompat_sample_chunks dask/array/tests/test_routines.py::test_aligned_coarsen_chunks[chunks0-1] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape112-shape212-atleast_2d] dask/array/tests/test_routines.py::test_dot_method dask/array/tests/test_routines.py::test_histogram_delayed_n_bins_raises_with_density dask/array/tests/test_routines.py::test_apply_along_axis[input_shape0-0-sum-<lambda>-False] dask/array/tests/test_routines.py::test_roll[1-7-chunks1] dask/array/tests/test_routines.py::test_argwhere_obj dask/array/tests/test_routines.py::test_coarsen_bad_chunks[chunks7] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape11-shape21-atleast_3d] dask/array/tests/test_routines.py::test_unique_rand[shape1-chunks1-0-10-23] dask/array/tests/test_routines.py::test_select dask/array/tests/test_routines.py::test_coarsen dask/array/tests/test_routines.py::test_matmul[x_shape0-y_shape0-x_chunks0-y_chunks0] dask/array/tests/test_routines.py::test_unique_kwargs[True-False-False] dask/array/tests/test_routines.py::test_unique_rand[shape2-chunks2-0-10-23] dask/array/tests/test_routines.py::test_squeeze[-1-True] dask/array/tests/test_routines.py::test_count_nonzero_axis[None] dask/array/tests/test_routines.py::test_matmul[x_shape24-y_shape24-x_chunks24-y_chunks24] dask/array/tests/test_routines.py::test_roll[-1-3-chunks0] dask/array/tests/test_routines.py::test_matmul[x_shape3-y_shape3-x_chunks3-y_chunks3] dask/array/tests/test_routines.py::test_rot90[shape2-kwargs2] dask/array/tests/test_routines.py::test_flip[shape4-flip-kwargs5] dask/array/tests/test_routines.py::test_ravel_multi_index[arr3-chunks3-kwargs3-<lambda>1] dask/array/tests/test_routines.py::test_einsum_order[C] dask/array/tests/test_routines.py::test_histogramdd_raises_incompat_bins_or_range dask/array/tests/test_routines.py::test_einsum_casting[equiv] dask/array/tests/test_routines.py::test_atleast_nd_one_arg[shape0-chunks0-atleast_1d] dask/array/tests/test_routines.py::test_flip[shape3-flip-kwargs3] dask/array/tests/test_routines.py::test_flip[shape3-flipud-kwargs0] dask/array/tests/test_routines.py::test_histogram2d[5-True-False] dask/array/tests/test_routines.py::test_roll[-1-3-chunks1] dask/array/tests/test_routines.py::test_matmul[x_shape11-y_shape11-x_chunks11-y_chunks11] dask/array/tests/test_routines.py::test_einsum_split_every[2] dask/array/tests/test_routines.py::test_atleast_nd_one_arg[shape4-chunks4-atleast_1d] dask/array/tests/test_routines.py::test_einsum_broadcasting_contraction dask/array/tests/test_routines.py::test_round dask/array/tests/test_routines.py::test_isin_assume_unique[False] dask/array/tests/test_routines.py::test_roll[axis4-shift3-chunks1] dask/array/tests/test_routines.py::test_flip[shape3-flip-kwargs5] dask/array/tests/test_routines.py::test_matmul[x_shape4-y_shape4-x_chunks4-y_chunks4] dask/array/tests/test_routines.py::test_apply_over_axes[shape2-axes2-sum1-<lambda>] dask/array/tests/test_routines.py::test_searchsorted[right-a4-3-v4-5] dask/array/tests/test_routines.py::test_coarsen_bad_chunks[chunks9] dask/array/tests/test_routines.py::test_flip[shape2-fliplr-kwargs1] dask/array/tests/test_routines.py::test_histogram2d[bins0-False-False] dask/array/tests/test_routines.py::test_histogramdd_raises_incompat_weight_chunks dask/array/tests/test_routines.py::test_atleast_nd_one_arg[shape1-chunks1-atleast_2d] dask/array/tests/test_routines.py::test_where_nonzero dask/array/tests/test_routines.py::test_apply_along_axis[input_shape3--1-range2-<lambda>-False] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape15-shape25-atleast_2d] dask/array/tests/test_routines.py::test_ravel_multi_index[arr3-chunks3-kwargs3-from_array] dask/array/tests/test_routines.py::test_flip[shape0-flip-kwargs5] dask/array/tests/test_routines.py::test_atleast_nd_one_arg[shape4-chunks4-atleast_2d] dask/array/tests/test_routines.py::test_matmul[x_shape21-y_shape21-x_chunks21-y_chunks21] dask/array/tests/test_routines.py::test_vdot[shape0-chunks0] dask/array/tests/test_routines.py::test_ravel_multi_index[arr4-chunks4-kwargs4-<lambda>2] dask/array/tests/test_routines.py::test_histogram2d_array_bins[True-True] dask/array/tests/test_routines.py::test_ravel_multi_index[arr6-chunks6-kwargs6-asarray] dask/array/tests/test_routines.py::test_ravel_multi_index[arr7-None-kwargs7-<lambda>0] dask/array/tests/test_routines.py::test_roll[None-9-chunks0] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape113-shape213-atleast_1d] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape111-shape211-atleast_1d] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape13-shape23-atleast_3d] dask/array/tests/test_routines.py::test_histogram_bin_range_raises[10-hist_range4] dask/array/tests/test_routines.py::test_apply_along_axis[input_shape1-1-range-<lambda>-False] dask/array/tests/test_routines.py::test_stack_unknown_chunk_sizes[vstack-vstack-2] dask/array/tests/test_routines.py::test_insert dask/array/tests/test_routines.py::test_histogram_alternative_bins_range dask/array/tests/test_routines.py::test_average[True-a1] dask/array/tests/test_routines.py::test_searchsorted[right-a3-3-v3-5] dask/array/tests/test_routines.py::test_ravel_multi_index_delayed_dims[False-dims0] dask/array/tests/test_routines.py::test_average_weights dask/array/tests/test_routines.py::test_choose dask/array/tests/test_routines.py::test_union1d[False-shape1] dask/array/tests/test_routines.py::test_flip[shape0-flip-kwargs7] dask/array/tests/test_routines.py::test_roll[None-9-chunks1] dask/array/tests/test_routines.py::test_matmul[x_shape27-y_shape27-x_chunks27-y_chunks27] dask/array/tests/test_routines.py::test_histogram_bin_range_raises[None-None] dask/array/tests/test_routines.py::test_rot90[shape1-kwargs2] dask/array/tests/test_routines.py::test_flip[shape2-flip-kwargs6] dask/array/tests/test_routines.py::test_tensordot_2[axes4] dask/array/tests/test_routines.py::test_roll[axis5-7-chunks1] dask/array/tests/test_routines.py::test_histogram_return_type dask/array/tests/test_routines.py::test_diff_append[2] dask/array/tests/test_routines.py::test_ediff1d[0-0-shape0] dask/array/tests/test_routines.py::test_roll[0-3-chunks1] dask/array/tests/test_routines.py::test_bincount dask/array/tests/test_routines.py::test_unravel_index dask/array/tests/test_routines.py::test_moveaxis_rollaxis[shape1-rollaxis] dask/array/tests/test_routines.py::test_ravel_multi_index[arr8-None-kwargs8-<lambda>0] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape11-shape21-atleast_1d] dask/array/tests/test_routines.py::test_flip[shape2-flipud-kwargs0] dask/array/tests/test_routines.py::test_matmul[x_shape18-y_shape18-x_chunks18-y_chunks18] dask/array/tests/test_routines.py::test_unique_kwargs[True-True-True] dask/array/tests/test_routines.py::test_flip[shape2-flip-kwargs7] dask/array/tests/test_routines.py::test_diff[0-shape1-1] dask/array/tests/test_routines.py::test_ravel_multi_index[arr0-chunks0-kwargs0-<lambda>2] dask/array/tests/test_routines.py::test_nonzero_method dask/array/tests/test_routines.py::test_squeeze[-1-False] dask/array/tests/test_routines.py::test_apply_over_axes[shape1-0-sum1-<lambda>] dask/array/tests/test_routines.py::test_rot90[shape3-kwargs4] dask/array/tests/test_routines.py::test_roll[axis5-3-chunks1] dask/array/tests/test_routines.py::test_array_return_type dask/array/tests/test_routines.py::test_tensordot_2[axes2] dask/array/tests/test_routines.py::test_isnull dask/array/tests/test_routines.py::test_atleast_nd_one_arg[shape0-chunks0-atleast_3d] dask/array/tests/test_routines.py::test_hstack dask/array/tests/test_routines.py::test_tril_triu_indices[3-1-3-auto] dask/array/tests/test_routines.py::test_unique_rand[shape1-chunks1-0-10-796] dask/array/tests/test_routines.py::test_searchsorted[right-a0-1-v0-1] dask/array/tests/test_routines.py::test_coarsen_bad_chunks[chunks5] dask/array/tests/test_routines.py::test_apply_along_axis[input_shape0-0-cumsum-<lambda>-True] dask/array/tests/test_routines.py::test_tril_ndims dask/array/tests/test_routines.py::test_roll[1-9-chunks1] dask/array/tests/test_routines.py::test_shape_and_ndim[shape1] dask/array/tests/test_routines.py::test_tensordot_double_contraction_ngt2 dask/array/tests/test_routines.py::test_flip[shape0-fliplr-kwargs1] dask/array/tests/test_routines.py::test_roll[0-9-chunks1] dask/array/tests/test_routines.py::test_searchsorted[left-a4-3-v4-5] dask/array/tests/test_routines.py::test_diff[2-shape0-0] dask/array/tests/test_routines.py::test_ediff1d[None-None-shape1] dask/array/tests/test_routines.py::test_ravel_multi_index[arr4-chunks4-kwargs4-<lambda>0] dask/array/tests/test_routines.py::test_unique_kwargs[False-False-True] dask/array/tests/test_routines.py::test_average[False-a0] dask/array/tests/test_routines.py::test_tril_triu_indices[3--1-3-auto] dask/array/tests/test_routines.py::test_histogram_delayed_range[True-0-False-False] dask/array/tests/test_routines.py::test_digitize dask/array/tests/test_routines.py::test_histogram_delayed_bins[False-False] dask/array/tests/test_routines.py::test_roll[None-shift4-chunks1] dask/array/tests/test_routines.py::test_histogram_bins_range_with_nan_array dask/array/tests/test_routines.py::test_coarsen_bad_chunks[chunks0] dask/array/tests/test_routines.py::test_tensordot_more_than_26_dims dask/array/tests/test_routines.py::test_vstack dask/array/tests/test_routines.py::test_histogram_bin_range_raises[10-hist_range6] dask/array/tests/test_routines.py::test_ravel_multi_index[arr8-None-kwargs8-<lambda>2] dask/array/tests/test_routines.py::test_matmul[x_shape25-y_shape25-x_chunks25-y_chunks25] dask/array/tests/test_routines.py::test_average[True-a0] dask/array/tests/test_routines.py::test_matmul[x_shape2-y_shape2-x_chunks2-y_chunks2] dask/array/tests/test_routines.py::test_ravel_multi_index[arr5-chunks5-kwargs5-<lambda>2] dask/array/tests/test_routines.py::test_ravel_multi_index[arr2-1-kwargs2-<lambda>2] dask/array/tests/test_routines.py::test_count_nonzero_obj_axis[axis3] dask/array/tests/test_routines.py::test_histogramdd_weighted_density dask/array/tests/test_routines.py::test_flip[shape3-flip-kwargs6] dask/array/tests/test_routines.py::test_diff_negative_order dask/array/tests/test_routines.py::test_rot90[shape3-kwargs2] dask/array/tests/test_routines.py::test_piecewise dask/array/tests/test_routines.py::test_count_nonzero_obj_axis[0] dask/array/tests/test_routines.py::test_tensordot_2[0] dask/array/tests/test_routines.py::test_histogram2d[5-False-True] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape17-shape27-atleast_3d] dask/array/tests/test_routines.py::test_histogram2d_array_bins[False-True] dask/array/tests/test_routines.py::test_argwhere_str dask/array/tests/test_routines.py::test_einsum_broadcasting_contraction2 dask/array/tests/test_routines.py::test_tril_triu_non_square_arrays dask/array/tests/test_routines.py::test_rot90[shape2-kwargs3] dask/array/tests/test_routines.py::test_histogram_delayed_range[False-1-True-False] dask/array/tests/test_routines.py::test_histogramdd_raises_incompat_multiarg_chunks dask/array/tests/test_routines.py::test_moveaxis_rollaxis_keyword dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape111-shape211-atleast_3d] dask/array/tests/test_routines.py::test_append dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape110-shape210-atleast_1d] dask/array/tests/test_routines.py::test_count_nonzero dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape113-shape213-atleast_3d] dask/array/tests/test_routines.py::test_aligned_coarsen_chunks[chunks3-10] dask/array/tests/test_routines.py::test_flip[shape3-flip-kwargs2] dask/array/tests/test_routines.py::test_roll[1-shift3-chunks1] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape19-shape29-atleast_2d] dask/array/tests/test_routines.py::test_derived_docstrings dask/array/tests/test_routines.py::test_matmul[x_shape31-y_shape31-x_chunks31-y_chunks31] dask/array/tests/test_routines.py::test_matmul[x_shape9-y_shape9-x_chunks9-y_chunks9] dask/array/tests/test_routines.py::test_count_nonzero_axis[axis3] dask/array/tests/test_routines.py::test_ravel_multi_index[arr0-chunks0-kwargs0-asarray] dask/array/tests/test_routines.py::test_rot90[shape0-kwargs4] dask/array/tests/test_routines.py::test_ravel_multi_index[arr3-chunks3-kwargs3-<lambda>2] dask/array/tests/test_routines.py::test_ravel_multi_index[arr2-1-kwargs2-<lambda>1] dask/array/tests/test_routines.py::test_einsum_casting[no] dask/array/tests/test_routines.py::test_roll[axis4-3-chunks1] dask/array/tests/test_routines.py::test_apply_along_axis[input_shape2-2-ndim-<lambda>-False] dask/array/tests/test_routines.py::test_flip[shape2-flip-kwargs3] dask/array/tests/test_routines.py::test_coarsen_bad_chunks[chunks14] dask/array/tests/test_routines.py::test_searchsorted[left-a3-3-v3-5] dask/array/tests/test_routines.py::test_aligned_coarsen_chunks[chunks9-4] dask/array/tests/test_routines.py::test_ravel_multi_index[arr1-chunks1-kwargs1-asarray] dask/array/tests/test_routines.py::test_roll[None-3-chunks0] dask/array/tests/test_routines.py::test_aligned_coarsen_chunks[chunks8-10] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape112-shape212-atleast_1d] dask/array/tests/test_routines.py::test_histogram_normed_deprecation dask/array/tests/test_routines.py::test_ravel_multi_index_delayed_dims[True-dims1] dask/array/tests/test_routines.py::test_rot90[shape4-kwargs3] dask/array/tests/test_routines.py::test_matmul[x_shape23-y_shape23-x_chunks23-y_chunks23] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape113-shape213-atleast_2d] dask/array/tests/test_routines.py::test_ravel_multi_index[arr0-chunks0-kwargs0-<lambda>0] dask/array/tests/test_routines.py::test_coarsen_bad_chunks[chunks4] dask/array/tests/test_routines.py::test_ravel_multi_index[arr4-chunks4-kwargs4-<lambda>1] dask/array/tests/test_routines.py::test_diff[1-shape1-1] dask/array/tests/test_routines.py::test_ravel_multi_index[arr6-chunks6-kwargs6-<lambda>1] dask/array/tests/test_routines.py::test_flip[shape4-flip-kwargs7] dask/array/tests/test_routines.py::test_ravel_multi_index[arr8-None-kwargs8-<lambda>1] dask/array/tests/test_routines.py::test_aligned_coarsen_chunks[chunks4-10] dask/array/tests/test_routines.py::test_searchsorted_sorter_not_implemented dask/array/tests/test_routines.py::test_roll[axis5-shift4-chunks1] dask/array/tests/test_routines.py::test_ravel_multi_index_unknown_shape_fails dask/array/tests/test_routines.py::test_apply_over_axes[shape1-0-range-<lambda>] dask/array/tests/test_routines.py::test_histogram_delayed_range[True-0-True-False] dask/array/tests/test_routines.py::test_searchsorted[right-a1-1-v1-1] dask/array/tests/test_routines.py::test_diff_prepend[2] dask/array/tests/test_routines.py::test_diff[1-shape0-0] dask/array/tests/test_routines.py::test_multi_insert dask/array/tests/test_routines.py::test_roll[0-9-chunks0] dask/array/tests/test_routines.py::test_flip[shape4-flip-kwargs4] dask/array/tests/test_routines.py::test_flip[shape4-fliplr-kwargs1] dask/array/tests/test_routines.py::test_histogramdd_weighted dask/array/tests/test_routines.py::test_delete dask/array/tests/test_routines.py::test_einsum_casting[safe] dask/array/tests/test_routines.py::test_matmul[x_shape12-y_shape12-x_chunks12-y_chunks12] dask/array/tests/test_routines.py::test_roll[1-3-chunks0] dask/array/tests/test_routines.py::test_histogram_delayed_range[True-None-True-False] dask/array/tests/test_routines.py::test_flip[shape1-flipud-kwargs0] dask/array/tests/test_routines.py::test_histogram_delayed_bins[True-False] dask/array/tests/test_routines.py::test_apply_over_axes[shape4-axes4-sum0-<lambda>] dask/array/tests/test_routines.py::test_matmul[x_shape28-y_shape28-x_chunks28-y_chunks28] dask/array/tests/test_routines.py::test_rot90[shape1-kwargs4] dask/array/tests/test_routines.py::test_einsum_invalid_args dask/array/tests/test_routines.py::test_flip[shape4-flip-kwargs2] dask/array/tests/test_routines.py::test_unique_kwargs[True-False-True] dask/array/tests/test_routines.py::test_roll[axis5-9-chunks1] dask/array/tests/test_routines.py::test_ravel_multi_index[arr2-1-kwargs2-from_array] dask/array/tests/test_routines.py::test_unique_kwargs[False-True-False] dask/array/tests/test_routines.py::test_apply_along_axis[input_shape3--1-sum-<lambda>-False] dask/array/tests/test_routines.py::test_ravel_multi_index[arr7-None-kwargs7-<lambda>1] dask/array/tests/test_routines.py::test_take_dask_from_numpy dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape10-shape20-atleast_3d] dask/array/tests/test_routines.py::test_histogram_delayed_range[True-None-False-True] dask/array/tests/test_routines.py::test_ravel_multi_index[arr3-chunks3-kwargs3-asarray] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape10-shape20-atleast_2d] dask/array/tests/test_routines.py::test_ravel_multi_index[arr4-chunks4-kwargs4-asarray] dask/array/tests/test_routines.py::test_rot90[shape1-kwargs1] dask/array/tests/test_routines.py::test_histogram_delayed_range[False-1-False-False] dask/array/tests/test_routines.py::test_select_multidimension dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape12-shape22-atleast_1d] dask/array/tests/test_routines.py::test_histogram_delayed_range[False-0-False-True] dask/array/tests/test_routines.py::test_matmul[x_shape19-y_shape19-x_chunks19-y_chunks19] dask/array/tests/test_routines.py::test_where_bool_optimization dask/array/tests/test_routines.py::test_ravel_multi_index[arr0-chunks0-kwargs0-from_array] dask/array/tests/test_routines.py::test_ravel_multi_index_unknown_shape dask/array/tests/test_routines.py::test_atleast_nd_one_arg[shape4-chunks4-atleast_3d] dask/array/tests/test_routines.py::test_einsum_order[A] dask/array/tests/test_routines.py::test_moveaxis_rollaxis[shape0-rollaxis] dask/array/tests/test_routines.py::test_flip[shape0-flipud-kwargs0] dask/array/tests/test_routines.py::test_histogramdd_raise_incompat_shape dask/array/tests/test_routines.py::test_matmul[x_shape16-y_shape16-x_chunks16-y_chunks16] dask/array/tests/test_routines.py::test_ravel_multi_index[arr5-chunks5-kwargs5-from_array] dask/array/tests/test_routines.py::test_aligned_coarsen_chunks[chunks1-2] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape15-shape25-atleast_1d] dask/array/tests/test_routines.py::test_roll[axis5-9-chunks0] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape11-shape21-atleast_2d] dask/array/tests/test_routines.py::test_searchsorted[right-a5-3-v5-v_chunks5] dask/array/tests/test_routines.py::test_histogram_delayed_range[True-1-False-False] dask/array/tests/test_routines.py::test_isclose dask/array/tests/test_routines.py::test_atleast_nd_one_arg[shape1-chunks1-atleast_1d] dask/array/tests/test_routines.py::test_count_nonzero_axis[0] dask/array/tests/test_routines.py::test_apply_along_axis[input_shape1-1-ndim-<lambda>-False] dask/array/tests/test_routines.py::test_roll[axis5-7-chunks0] dask/array/tests/test_routines.py::test_roll[-1-shift4-chunks0] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape10-shape20-atleast_1d] dask/array/tests/test_routines.py::test_diff[2-shape2-2] dask/array/tests/test_routines.py::test_coarsen_bad_chunks[chunks10] dask/array/tests/test_routines.py::test_matmul[x_shape8-y_shape8-x_chunks8-y_chunks8] dask/array/tests/test_routines.py::test_apply_along_axis[input_shape3--1-ndim-<lambda>-False] dask/array/tests/test_routines.py::test_histogram2d_array_bins[False-False] dask/array/tests/test_routines.py::test_atleast_nd_no_args[atleast_3d] dask/array/tests/test_routines.py::test_apply_over_axes[shape4-axes4-range-<lambda>] dask/array/tests/test_routines.py::test_apply_over_axes[shape3-axes3-range-<lambda>] dask/array/tests/test_routines.py::test_ravel_multi_index_delayed_dims[False-dims1] dask/array/tests/test_routines.py::test_roll[-1-7-chunks1] dask/array/tests/test_routines.py::test_matmul[x_shape17-y_shape17-x_chunks17-y_chunks17] dask/array/tests/test_routines.py::test_coarsen_bad_chunks[chunks15] dask/array/tests/test_routines.py::test_histogram_delayed_range[True-None-False-False] dask/array/tests/test_routines.py::test_atleast_nd_one_arg[shape2-chunks2-atleast_1d] dask/array/tests/test_routines.py::test_histogram_delayed_range[True-0-True-True] dask/array/tests/test_routines.py::test_ravel dask/array/tests/test_routines.py::test_count_nonzero_str dask/array/tests/test_routines.py::test_ravel_multi_index_non_int_dtype dask/array/tests/test_routines.py::test_roll[axis4-7-chunks1] dask/array/tests/test_routines.py::test_searchsorted[left-a5-3-v5-v_chunks5] dask/array/tests/test_routines.py::test_roll[axis4-shift3-chunks0] dask/array/tests/test_routines.py::test_histogram2d[bins0-True-False] dask/array/tests/test_routines.py::test_tensordot_2[1] dask/array/tests/test_routines.py::test_roll[None-7-chunks0] dask/array/tests/test_routines.py::test_apply_along_axis[input_shape1-1-range2-<lambda>-False] dask/array/tests/test_routines.py::test_coarsen_bad_chunks[chunks1] dask/array/tests/test_routines.py::test_einsum_broadcasting_contraction3 dask/array/tests/test_routines.py::test_histogram_delayed_range[False-0-False-False] dask/array/tests/test_routines.py::test_histogramdd_density dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape14-shape24-atleast_1d] dask/array/tests/test_routines.py::test_einsum_casting[unsafe] dask/array/tests/test_routines.py::test_atleast_nd_no_args[atleast_2d] dask/array/tests/test_routines.py::test_atleast_nd_one_arg[shape3-chunks3-atleast_2d] dask/array/tests/test_routines.py::test_roll[None-shift4-chunks0] dask/array/tests/test_routines.py::test_shape_and_ndim[shape0] dask/array/tests/test_routines.py::test_histogram dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape19-shape29-atleast_1d] dask/array/tests/test_routines.py::test_tensordot dask/array/tests/test_routines.py::test_vdot[shape1-chunks1] dask/array/tests/test_routines.py::test_rot90[shape1-kwargs3] dask/array/tests/test_routines.py::test_ravel_multi_index[arr6-chunks6-kwargs6-<lambda>0] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape12-shape22-atleast_3d] dask/array/tests/test_routines.py::test_ravel_multi_index[arr6-chunks6-kwargs6-from_array] dask/array/tests/test_routines.py::test_rot90[shape0-kwargs1] dask/array/tests/test_routines.py::test_unique_kwargs[True-True-False] dask/array/tests/test_routines.py::test_roll[axis4-9-chunks0] dask/array/tests/test_routines.py::test_coarsen_bad_chunks[chunks6] dask/array/tests/test_routines.py::test_union1d[False-shape0] dask/array/tests/test_routines.py::test_flip[shape2-flip-kwargs4] dask/array/tests/test_routines.py::test_histogram2d[5-True-True] dask/array/tests/test_routines.py::test_transpose dask/array/tests/test_routines.py::test_take dask/array/tests/test_routines.py::test_atleast_nd_no_args[atleast_1d] dask/array/tests/test_routines.py::test_apply_over_axes[shape3-axes3-sum0-<lambda>] dask/array/tests/test_routines.py::test_atleast_nd_one_arg[shape1-chunks1-atleast_3d] dask/array/tests/test_routines.py::test_histogram_delayed_bins[False-True] dask/array/tests/test_routines.py::test_roll[None-7-chunks1] dask/array/tests/test_routines.py::test_aligned_coarsen_chunks[chunks7-16] dask/array/tests/test_routines.py::test_transpose_skip_when_possible dask/array/tests/test_routines.py::test_nonzero dask/array/tests/test_routines.py::test_moveaxis_rollaxis_numpy_api dask/array/tests/test_routines.py::test_count_nonzero_axis[axis2] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape110-shape210-atleast_2d] dask/array/tests/test_routines.py::test_allclose dask/array/tests/test_routines.py::test_moveaxis_rollaxis[shape2-moveaxis] dask/array/tests/test_routines.py::test_diff_append[0] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape14-shape24-atleast_2d] dask/array/tests/test_routines.py::test_apply_over_axes[shape1-0-sum0-<lambda>] dask/array/tests/test_routines.py::test_histogramdd dask/array/tests/test_routines.py::test_histogramdd_edges dask/array/tests/test_routines.py::test_flip[shape1-flip-kwargs7] dask/array/tests/test_routines.py::test_matmul[x_shape30-y_shape30-x_chunks30-y_chunks30] dask/array/tests/test_routines.py::test_coarsen_bad_chunks[chunks11] dask/array/tests/test_routines.py::test_flip[shape1-flip-kwargs3] dask/array/tests/test_routines.py::test_histogram_delayed_range[False-1-True-True] dask/array/tests/test_routines.py::test_roll[1-3-chunks1] dask/array/tests/test_routines.py::test_roll[-1-shift3-chunks1] dask/array/tests/test_routines.py::test_ravel_multi_index[arr6-chunks6-kwargs6-<lambda>2] dask/array/tests/test_routines.py::test_bincount_unspecified_minlength dask/array/tests/test_routines.py::test_roll[axis4-shift4-chunks1] dask/array/tests/test_routines.py::test_ravel_multi_index[arr1-chunks1-kwargs1-<lambda>2] dask/array/tests/test_routines.py::test_einsum_optimize[optimize_opts2] dask/array/tests/test_routines.py::test_diff[2-shape1-1] dask/array/tests/test_routines.py::test_rot90[shape0-kwargs3] dask/array/tests/test_routines.py::test_roll[None-3-chunks1] dask/array/tests/test_routines.py::test_corrcoef dask/array/tests/test_routines.py::test_tensordot_2[axes6] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape17-shape27-atleast_2d] dask/array/tests/test_routines.py::test_matmul[x_shape14-y_shape14-x_chunks14-y_chunks14] dask/array/tests/test_routines.py::test_flip[shape1-flip-kwargs4] dask/array/tests/test_routines.py::test_roll[1-shift4-chunks1] dask/array/tests/test_routines.py::test_roll[axis4-shift4-chunks0] dask/array/tests/test_routines.py::test_where_incorrect_args dask/array/tests/test_routines.py::test_matmul[x_shape26-y_shape26-x_chunks26-y_chunks26] dask/array/tests/test_routines.py::test_dstack dask/array/tests/test_routines.py::test_tensordot_double_contraction_neq2[auto] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape112-shape212-atleast_3d] dask/array/tests/test_routines.py::test_roll[axis4-9-chunks1] dask/array/tests/test_routines.py::test_roll[1-shift4-chunks0] dask/array/tests/test_routines.py::test_isnull_result_is_an_array dask/array/tests/test_routines.py::test_histogram2d_array_bins[True-False] dask/array/tests/test_routines.py::test_coarsen_bad_chunks[chunks3] dask/array/tests/test_routines.py::test_diff[1-shape3--1] dask/array/tests/test_routines.py::test_histogram_delayed_range[False-0-True-True] dask/array/tests/test_routines.py::test_unique_kwargs[False-False-False] dask/array/tests/test_routines.py::test_einsum_order[K] dask/array/tests/test_routines.py::test_histogram_delayed_range[False-None-False-False] dask/array/tests/test_routines.py::test_rot90[shape4-kwargs1] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape18-shape28-atleast_3d] dask/array/tests/test_routines.py::test_unique_rand[shape2-chunks2-0-10-796] dask/array/tests/test_routines.py::test_aligned_coarsen_chunks[chunks6-10] dask/array/tests/test_routines.py::test_roll[axis5-shift3-chunks0] dask/array/tests/test_routines.py::test_searchsorted[left-a1-1-v1-1] dask/array/tests/test_routines.py::test_matmul[x_shape22-y_shape22-x_chunks22-y_chunks22] dask/array/tests/test_routines.py::test_rot90[shape2-kwargs1] dask/array/tests/test_routines.py::test_flip[shape1-flip-kwargs6] dask/array/tests/test_routines.py::test_ravel_multi_index[arr2-1-kwargs2-asarray] dask/array/tests/test_routines.py::test_histogram_bin_range_raises[bins9-None] dask/array/tests/test_routines.py::test_histogram_delayed_range[False-None-True-False] dask/array/tests/test_routines.py::test_squeeze[None-False] dask/array/tests/test_routines.py::test_apply_along_axis[input_shape0-0-range2-<lambda>-False] dask/array/tests/test_routines.py::test_shape_and_ndim[shape2] dask/array/tests/test_routines.py::test_histogram_bin_range_raises[bins8-None] dask/array/tests/test_routines.py::test_flip[shape0-flip-kwargs6] dask/array/tests/test_routines.py::test_matmul[x_shape20-y_shape20-x_chunks20-y_chunks20] dask/array/tests/test_routines.py::test_apply_over_axes[shape2-axes2-sum0-<lambda>] dask/array/tests/test_routines.py::test_roll[0-shift3-chunks1] dask/array/tests/test_routines.py::test_histogram_bin_range_raises[bins10-None] dask/array/tests/test_routines.py::test_roll[0-7-chunks0] dask/array/tests/test_routines.py::test_roll[None-shift3-chunks1] dask/array/tests/test_routines.py::test_union1d[True-shape1] dask/array/tests/test_routines.py::test_ravel_multi_index[arr5-chunks5-kwargs5-<lambda>1] dask/array/tests/test_routines.py::test_matmul[x_shape1-y_shape1-x_chunks1-y_chunks1] dask/array/tests/test_routines.py::test_rot90[shape0-kwargs2] dask/array/tests/test_routines.py::test_apply_along_axis[input_shape2-2-sum-<lambda>-False] dask/array/tests/test_routines.py::test_outer[shape10-shape20] dask/array/tests/test_routines.py::test_histogram_bin_range_raises[None-hist_range3] dask/array/tests/test_routines.py::test_apply_along_axis[input_shape2-2-range-<lambda>-False] dask/array/tests/test_routines.py::test_apply_over_axes[shape2-axes2-range-<lambda>] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape12-shape22-atleast_2d] dask/array/tests/test_routines.py::test_histogram2d[5-False-False] dask/array/tests/test_routines.py::test_tril_triu_indices[3-0-3-auto] dask/array/tests/test_routines.py::test_coarsen_bad_chunks[chunks12] dask/array/tests/test_routines.py::test_ravel_multi_index_delayed_dims[True-dims0] dask/array/tests/test_routines.py::test_aligned_coarsen_chunks[chunks2-2] dask/array/tests/test_routines.py::test_einsum_optimize[optimize_opts1] dask/array/tests/test_routines.py::test_tensordot_2[axes3] dask/array/tests/test_routines.py::test_roll[0-shift3-chunks0] dask/array/tests/test_routines.py::test_histogramdd_alternative_bins_range dask/array/tests/test_routines.py::test_flip[shape0-flip-kwargs4] dask/array/tests/test_routines.py::test_ravel_multi_index[arr4-chunks4-kwargs4-from_array] dask/array/tests/test_routines.py::test_einsum_split_every[None] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape110-shape210-atleast_3d] dask/array/tests/test_routines.py::test_select_return_dtype dask/array/tests/test_routines.py::test_squeeze[None-True] dask/array/tests/test_routines.py::test_rot90[shape1-kwargs0] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape114-shape214-atleast_1d] dask/array/tests/test_routines.py::test_matmul[x_shape7-y_shape7-x_chunks7-y_chunks7] dask/array/tests/test_routines.py::test_unique_rand[shape3-chunks3-0-10-23] dask/array/tests/test_routines.py::test_flip[shape4-flip-kwargs6] dask/array/tests/test_routines.py::test_histogram_delayed_range[False-0-True-False] dask/array/tests/test_routines.py::test_histogram_bin_range_raises[10-None] dask/array/tests/test_routines.py::test_histogram_bin_range_raises[10-hist_range7] dask/array/tests/test_routines.py::test_rot90[shape2-kwargs4] dask/array/tests/test_routines.py::test_histogramdd_seq_of_arrays dask/array/tests/test_routines.py::test_rot90[shape3-kwargs0] dask/array/tests/test_routines.py::test_einsum_optimize[optimize_opts0] dask/array/tests/test_routines.py::test_apply_along_axis[input_shape2-2-cumsum-<lambda>-True] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape16-shape26-atleast_1d] dask/array/tests/test_routines.py::test_average[False-a1] dask/array/tests/test_routines.py::test_roll[0-7-chunks1] dask/array/tests/test_routines.py::test_roll[axis4-7-chunks0] dask/array/tests/test_routines.py::test_moveaxis_rollaxis[shape1-moveaxis] dask/array/tests/test_routines.py::test_ravel_multi_index[arr1-chunks1-kwargs1-<lambda>0] dask/array/tests/test_routines.py::test_tensordot_double_contraction_neq2[chunks1] dask/array/tests/test_routines.py::test_coarsen_bad_chunks[chunks2] dask/array/tests/test_routines.py::test_tensordot_double_contraction_neq2[chunks2] dask/array/tests/test_routines.py::test_isin_assume_unique[True] dask/array/tests/test_routines.py::test_moveaxis_rollaxis[shape0-moveaxis] dask/array/tests/test_routines.py::test_flip[shape1-flip-kwargs5] dask/array/tests/test_routines.py::test_ravel_multi_index[arr1-chunks1-kwargs1-from_array] dask/array/tests/test_routines.py::test_tril_triu dask/array/tests/test_routines.py::test_ediff1d[0-0-shape1] dask/array/tests/test_routines.py::test_aligned_coarsen_chunks[chunks5-8] dask/array/tests/test_routines.py::test_bincount_with_weights[weights0] dask/array/tests/test_routines.py::test_ravel_multi_index[arr5-chunks5-kwargs5-<lambda>0] dask/array/tests/test_routines.py::test_ptp[shape2-1] dask/array/tests/test_routines.py::test_histogramdd_raise_normed_and_density dask/array/tests/test_routines.py::test_matmul[x_shape10-y_shape10-x_chunks10-y_chunks10] dask/array/tests/test_routines.py::test_roll[axis5-3-chunks0] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape15-shape25-atleast_3d] dask/array/tests/test_routines.py::test_where_scalar_dtype dask/array/tests/test_routines.py::test_apply_over_axes[shape0-axes0-range-<lambda>] dask/array/tests/test_routines.py::test_matmul[x_shape13-y_shape13-x_chunks13-y_chunks13] dask/array/tests/test_routines.py::test_ravel_multi_index[arr2-1-kwargs2-<lambda>0] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape17-shape27-atleast_1d] dask/array/tests/test_routines.py::test_searchsorted[left-a2-3-v2-2] dask/array/tests/test_routines.py::test_roll[1-9-chunks0] dask/array/tests/test_routines.py::test_roll[0-shift4-chunks0] dask/array/tests/test_routines.py::test_diff[0-shape2-2] dask/array/tests/test_routines.py::test_apply_over_axes[shape4-axes4-sum1-<lambda>] dask/array/tests/test_routines.py::test_stack_unknown_chunk_sizes[hstack-hstack-0] dask/array/tests/test_routines.py::test_einsum_casting[same_kind] dask/array/tests/test_routines.py::test_roll[-1-9-chunks1] dask/array/tests/test_routines.py::test_matmul[x_shape15-y_shape15-x_chunks15-y_chunks15] dask/array/tests/test_routines.py::test_rot90[shape4-kwargs2] dask/array/tests/test_routines.py::test_flip[shape3-flip-kwargs7] dask/array/tests/test_routines.py::test_flip[shape4-flipud-kwargs0] dask/array/tests/test_routines.py::test_diff[0-shape3--1] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape16-shape26-atleast_2d] dask/array/tests/test_routines.py::test_flip[shape0-flip-kwargs3] dask/array/tests/test_routines.py::test_ediff1d[to_end2-to_begin2-shape1] dask/array/tests/test_routines.py::test_matmul[x_shape5-y_shape5-x_chunks5-y_chunks5] dask/array/tests/test_routines.py::test_apply_along_axis[input_shape3--1-range-<lambda>-False] dask/array/tests/test_routines.py::test_roll[0-3-chunks0] dask/array/tests/test_routines.py::test_roll[0-shift4-chunks1] dask/array/tests/test_routines.py::test_histogram_delayed_range[True-1-True-True] dask/array/tests/test_routines.py::test_bincount_with_weights[weights1] dask/array/tests/test_routines.py::test_ravel_1D_no_op dask/array/tests/test_routines.py::test_ptp[shape3-2] dask/array/tests/test_routines.py::test_histogram_delayed_range[False-None-True-True] dask/array/tests/test_routines.py::test_roll[-1-7-chunks0] dask/array/tests/test_routines.py::test_array dask/array/tests/test_routines.py::test_roll[-1-9-chunks0] dask/array/tests/test_routines.py::test_einsum_order[F] dask/array/tests/test_routines.py::test_ptp[shape4--1] dask/array/tests/test_routines.py::test_histogram_bin_range_raises[10-1] dask/array/tests/test_routines.py::test_stack_unknown_chunk_sizes[dstack-dstack-1] dask/array/tests/test_routines.py::test_flip[shape2-flip-kwargs5] dask/array/tests/test_routines.py::test_tensordot_2[axes5] dask/array/tests/test_routines.py::test_coarsen_bad_chunks[chunks8] dask/array/tests/test_routines.py::test_histogram2d[bins0-True-True] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape18-shape28-atleast_1d] dask/array/tests/test_routines.py::test_unique_rand[shape0-chunks0-0-10-796] dask/array/tests/test_routines.py::test_tensordot_double_contraction_neq2[chunks4] dask/array/tests/test_routines.py::test_flatnonzero dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape14-shape24-atleast_3d] dask/array/tests/test_routines.py::test_diff_prepend[0] dask/array/tests/test_routines.py::test_roll[-1-shift3-chunks0] dask/array/tests/test_routines.py::test_diff[0-shape0-0] dask/array/tests/test_routines.py::test_union1d[True-shape2] dask/array/tests/test_routines.py::test_roll[1-shift3-chunks0] dask/array/tests/test_routines.py::test_where dask/array/tests/test_routines.py::test_histogram_delayed_range[True-0-False-True] dask/array/tests/test_routines.py::test_flip[shape1-flip-kwargs2] dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape19-shape29-atleast_3d] dask/array/tests/test_routines.py::test_result_type dask/array/tests/test_routines.py::test_rot90[shape4-kwargs4] dask/array/tests/test_routines.py::test_squeeze[0-True] dask/array/tests/test_routines.py::test_flip[shape4-flip-kwargs3] dask/array/tests/test_routines.py::test_piecewise_otherwise dask/array/tests/test_routines.py::test_ravel_multi_index[arr5-chunks5-kwargs5-asarray] dask/array/tests/test_routines.py::test_average_raises dask/array/tests/test_routines.py::test_atleast_nd_two_args[shape13-shape23-atleast_1d] dask/array/tests/test_routines.py::test_rot90[shape0-kwargs0] dask/array/tests/test_routines.py::test_roll[-1-shift4-chunks1] dask/array/tests/test_routines.py::test_ediff1d[to_end2-to_begin2-shape0] dask/array/tests/test_routines.py::test_atleast_nd_one_arg[shape2-chunks2-atleast_3d] dask/array/tests/test_routines.py::test_roll[1-7-chunks0] dask/array/tests/test_routines.py::test_rot90[shape3-kwargs3] dask/array/tests/test_routines.py::test_histogram_delayed_range[True-1-False-True] dask/array/tests/test_routines.py::test_histogram_extra_args_and_shapes dask/array/tests/test_routines.py::test_apply_over_axes[shape0-axes0-sum0-<lambda>] dask/array/tests/test_routines.py::test_tensordot_double_contraction_neq2[chunks3] dask/array/tests/test_routines.py::test_roll[axis5-shift4-chunks0] dask/array/tests/test_routines.py::test_argwhere dask/array/tests/test_routines.py::test_swapaxes dask/array/tests/test_routines.py::test_flip[shape2-flip-kwargs2] dask/array/tests/test_routines.py::test_roll[None-shift3-chunks0] dask/array/tests/test_routines.py::test_roll[axis5-shift3-chunks1] dask/array/tests/test_routines.py::test_rot90[shape3-kwargs1] dask/array/tests/test_routines.py::test_coarsen_with_excess