code: def test_combine_channels_metadata():
      """Test if metadata is correctly retained in combined object."""
      pd = pytest.importorskip("pandas")
      raw = read_raw_fif(raw_fname, preload=True)
      epochs = Epochs(raw, read_events(eve_fname), preload=True)
  
      metadata = pd.DataFrame(
          {"A": np.arange(len(epochs)), "B": np.ones(len(epochs))}
      )
      epochs.metadata = metadata
  
      good = dict(foo=[0, 1, 3, 4], bar=[5, 2])  # good grad and mag
      combined_epochs = combine_channels(epochs, good)
      pd.testing.assert_frame_equal(
          epochs.metadata, combined_epochs.metadata
      )
  
imports: import hashlib
  from copy import deepcopy
  from functools import partial
  from pathlib import Path
  import numpy
  import pytest
  from numpy.testing import assert_allclose, assert_array_equal, assert_equal
  from scipy.io import savemat
  from mne import Epochs, EpochsArray, EvokedArray, create_info, make_ad_hoc_cov, pick_channels, pick_types, read_events
  from mne._fiff.constants import FIFF, _ch_unit_mul_named
  from mne.channels import combine_channels, equalize_channels, find_ch_adjacency, get_builtin_ch_adjacencies, make_1020_channel_selections, read_ch_adjacency, read_custom_montage, rename_channels
  from mne.channels.channels import _BUILTIN_CHANNEL_ADJACENCIES, _BuiltinChannelAdjacency, _ch_neighbor_adjacency, _compute_ch_adjacency
  from mne.datasets import testing
  from mne.io import RawArray, read_info, read_raw_bti, read_raw_ctf, read_raw_eeglab, read_raw_fif, read_raw_kit
  from mne.parallel import parallel_func
  from mne.utils import requires_good_network
label_desc: Use image node_id 18 for calling a global function with example usage: test_combine_channels_metadata() without return types