code: def test_read_ica_eeglab():
      """Test read_ica_eeglab function."""
      fname = test_base_dir / "EEGLAB" / "test_raw.set"
      fname_cleaned_matlab = (
          test_base_dir / "EEGLAB" / "test_raw.cleaned.set"
      )
  
      raw = read_raw_eeglab(fname, preload=True)
      raw_eeg = _check_load_mat(fname, None)
      raw_cleaned_matlab = read_raw_eeglab(
          fname_cleaned_matlab, preload=True
      )
  
      mark_to_remove = ["manual"]
      comp_info = raw_eeg.marks["comp_info"]
  
      if len(comp_info["flags"].shape) > 1:
          ind_comp_to_drop = [
              np.where(flags)[0]
              for flags, label in zip(
                  comp_info["flags"], comp_info["label"]
              )
              if label in mark_to_remove
          ]
          ind_comp_to_drop = np.unique(np.concatenate(ind_comp_to_drop))
      else:
          ind_comp_to_drop = np.where(comp_info["flags"])[0]
  
      ica = read_ica_eeglab(fname)
      _assert_ica_attributes(ica)
      raw_cleaned = ica.apply(raw.copy(), exclude=ind_comp_to_drop)
  
      assert_allclose(
          raw_cleaned_matlab.get_data(),
          raw_cleaned.get_data(),
          rtol=1e-05,
          atol=1e-08,
      )
  
imports: import os
  import shutil
  from contextlib import nullcontext
  from pathlib import Path
  import matplotlib.pyplot
  import numpy
  import pytest
  from numpy.testing import assert_allclose, assert_array_almost_equal, assert_array_equal, assert_equal
  from scipy import linalg, stats
  from scipy.io import loadmat, savemat
  from mne import Annotations, Epochs, EpochsArray, EvokedArray, Info, create_info, make_ad_hoc_cov, pick_channels_regexp, pick_types, read_events
  from mne._fiff.pick import _DATA_CH_TYPES_SPLIT, get_channel_type_constants
  from mne.cov import read_cov
  from mne.datasets import testing
  from mne.event import make_fixed_length_events
  from mne.io import RawArray, read_raw_ctf, read_raw_eeglab, read_raw_fif
  from mne.io.eeglab.eeglab import _check_load_mat
  from mne.preprocessing import ICA
  from mne.preprocessing import ica_find_ecg_events, ica_find_eog_events, read_ica
  from mne.preprocessing.ica import _ica_explained_variance, _sort_components, corrmap, get_score_funcs, read_ica_eeglab
  from mne.rank import _compute_rank_int
  from mne.utils import _record_warnings, catch_logging, check_version
label_desc: Use image node_id 27 for calling a global function with example usage: test_read_ica_eeglab() without return types