code: def test_nan_reductions(library, X, reduction, expected):
      """Check NaN reductions like _nanmin and _nanmax"""
      xp = pytest.importorskip(library)
  
      if isinstance(expected, list):
          expected = xp.asarray(expected)
  
      with config_context(array_api_dispatch=True):
          result = reduction(xp.asarray(X))
  
      assert_allclose(result, expected)
  
imports: from functools import partial
  import numpy
  import pytest
  from numpy.testing import assert_allclose
  from sklearn._config import config_context
  from sklearn.base import BaseEstimator
  from sklearn.utils._array_api import _ArrayAPIWrapper, _asarray_with_order, _atol_for_type, _convert_to_numpy, _estimator_with_converted_arrays, _nanmax, _nanmin, _NumPyAPIWrapper, _weighted_sum, get_namespace, supported_float_dtypes, yield_namespace_device_dtype_combinations
  from sklearn.utils._testing import _array_api_for_tests, skip_if_array_api_compat_not_configured
label_desc: Use image node_id 9 for calling a global function with example usage: test_nan_reductions(library, X, reduction, expected) without return types