code: def test_safe_indexing_1d_array_error(X_constructor):
      # check that we are raising an error if the array-like passed is 1D and
      # we try to index on the 2nd dimension
      X = list(range(5))
      if X_constructor == "array":
          X_constructor = np.asarray(X)
      elif X_constructor == "series":
          pd = pytest.importorskip("pandas")
          X_constructor = pd.Series(X)
  
      err_msg = (
          "'X' should be a 2D NumPy array, 2D sparse matrix or pandas"
      )
      with pytest.raises(ValueError, match=err_msg):
          _safe_indexing(X_constructor, [0, 1], axis=1)
  
imports: import string
  import timeit
  import warnings
  from copy import copy
  from itertools import chain
  import numpy
  import pytest
  from sklearn import config_context
  from sklearn.utils import _approximate_mode, _determine_key_type, _get_column_indices, _is_polars_df, _message_with_time, _print_elapsed_time, _safe_assign, _safe_indexing, _to_object_array, check_random_state, column_or_1d, deprecated, gen_even_slices, get_chunk_n_rows, is_scalar_nan, resample, safe_mask, shuffle
  from sklearn.utils._mocking import MockDataFrame
  from sklearn.utils._testing import _convert_container, assert_allclose_dense_sparse, assert_array_equal, assert_no_warnings
  from sklearn.utils.fixes import CSC_CONTAINERS, CSR_CONTAINERS
label_desc: Use image node_id 25 for calling a global function with example usage: test_safe_indexing_1d_array_error(X_constructor) without return types