code: def test_whiten_evoked():
      """Test whitening of evoked data."""
      evoked = read_evokeds(
          ave_fname, condition=0, baseline=(None, 0), proj=True
      )
      cov = read_cov(cov_fname)
  
      ###########################################################################
      # Show result
      picks = pick_types(
          evoked.info, meg=True, eeg=True, ref_meg=False, exclude="bads"
      )
  
      noise_cov = regularize(
          cov,
          evoked.info,
          grad=0.1,
          mag=0.1,
          eeg=0.1,
          exclude="bads",
          rank="full",
      )
  
      evoked_white = whiten_evoked(evoked, noise_cov, picks, diag=True)
      whiten_baseline_data = evoked_white.data[picks][
          :, evoked.times < 0
      ]
      mean_baseline = np.mean(np.abs(whiten_baseline_data), axis=1)
      assert np.all(mean_baseline < 1.0)
      assert np.all(mean_baseline > 0.2)
  
      # degenerate
      cov_bad = pick_channels_cov(cov, include=evoked.ch_names[:10])
      pytest.raises(RuntimeError, whiten_evoked, evoked, cov_bad, picks)
  
imports: import itertools
  import sys
  from inspect import signature
  from pathlib import Path
  import numpy
  import pytest
  from numpy.testing import assert_allclose, assert_array_almost_equal, assert_array_equal, assert_equal
  from mne import Epochs, compute_covariance, compute_proj_raw, compute_rank, compute_raw_covariance, create_info, find_events, make_ad_hoc_cov, make_fixed_length_events, merge_events, pick_channels_cov, pick_info, pick_types, read_cov, read_evokeds, write_cov
  from mne._fiff.pick import _DATA_CH_TYPES_SPLIT
  from mne.channels import equalize_channels
  from mne.cov import _auto_low_rank_model, _regularized_covariance, compute_whitener, prepare_noise_cov, regularize, whiten_evoked
  from mne.datasets import testing
  from mne.fixes import _safe_svd
  from mne.io import RawArray, read_info, read_raw_ctf, read_raw_fif
  from mne.preprocessing import maxwell_filter
  from mne.rank import _compute_rank_int
  from mne.utils import _record_warnings, assert_snr, catch_logging
label_desc: Use image node_id 13 for calling a global function with example usage: test_whiten_evoked() without return types