code: def test_shade_bool():
      data = ~np.eye(3, dtype="bool")
      x = tf.Image(data, coords=coords, dims=dims)
      sol = tf.Image(
          np.where(data, 4278190335, 0).astype("uint32"),
          coords=coords,
          dims=dims,
      )
      img = tf.shade(x, cmap=["pink", "red"], how="log")
      assert_eq_xr(img, sol)
      img = tf.shade(x, cmap=["pink", "red"], how="cbrt")
      assert_eq_xr(img, sol)
      img = tf.shade(x, cmap=["pink", "red"], how="linear")
      assert_eq_xr(img, sol)
      img = tf.shade(x, cmap=["pink", "red"], how="eq_hist")
      assert_eq_xr(img, sol)
  
imports: from __future__ import annotations
  from io import BytesIO
  import numpy
  import xarray
  import dask.array
  import PIL
  import pytest
  import datashader.transfer_functions
  from datashader.tests.test_pandas import assert_eq_ndarray, assert_eq_xr, assert_image_close
label_desc: Use image node_id 9 for calling a global function with example usage: test_shade_bool() without return types