code: def _check_dtype_and_strides(x, y, dtype_check, strides_check):
      if (
          strides_check is not None
          and dtype_check is not None
          and strides_check
          and not dtype_check
      ):
          raise ValueError(
              "Combination of dtype_check=False and strides_check=True is not "
              "allowed"
          )
      if dtype_check is None:
          dtype_check = True
      if strides_check is None:
          strides_check = dtype_check
  
      if isinstance(
          x, (numpy.ndarray, chainerx.ndarray)
      ) and isinstance(y, (numpy.ndarray, chainerx.ndarray)):
          if strides_check:
              assert (
                  x.strides == y.strides
              ), "Strides mismatch: x: {}, y: {}".format(
                  x.strides, y.strides
              )
          if dtype_check:
              assert (
                  x.dtype.name == y.dtype.name
              ), "Dtype mismatch: x: {}, y: {}".format(x.dtype, y.dtype)
  
file_path: chainer/chainerx/testing/array.py
imports: import numpy.testing
  import chainerx
label_desc: Use image node_id 2 for calling a global function with example usage: _check_dtype_and_strides(x, y, dtype_check, strides_check) without return types