code: def test_edf_stim_ch_pick_up(test_input, EXPECTED):
      """Test stim_channel."""
      # This is fragile for EEG/EEG-CSD, so just omit csd
      KIND_DICT = get_channel_type_constants()
      TYPE_LUT = {
          v["kind"]: k
          for k, v in KIND_DICT.items()
          if k not in ("csd", "chpi")
      }  # chpi not needed, and unhashable (a list)
      fname = data_dir / "test_stim_channel.edf"
  
      raw = read_raw_edf(fname, stim_channel=test_input)
      ch_types = {
          ch["ch_name"]: TYPE_LUT[ch["kind"]] for ch in raw.info["chs"]
      }
      assert ch_types == EXPECTED
  
imports: import datetime
  from contextlib import nullcontext
  from functools import partial
  from pathlib import Path
  import numpy
  import pytest
  from numpy.testing import assert_allclose, assert_array_almost_equal, assert_array_equal, assert_equal
  from scipy.io import loadmat
  from mne import Annotations, pick_types
  from mne._fiff.pick import channel_indices_by_type, get_channel_type_constants
  from mne.annotations import _ndarray_ch_names, events_from_annotations, read_annotations
  from mne.datasets import testing
  from mne.io import edf, read_raw_bdf, read_raw_edf, read_raw_fif, read_raw_gdf
  from mne.io.edf.edf import _edf_str, _parse_prefilter_string, _read_annotations_edf, _read_ch, _read_edf_header, _read_header
  from mne.io.tests.test_raw import _test_raw_reader
  from mne.tests.test_annotations import _assert_annotations_equal
label_desc: Use image node_id 23 for calling a global function with example usage: test_edf_stim_ch_pick_up(test_input, EXPECTED) without return types