code: def test_annotation_epoching():
      """Test that annotations work properly with concatenated edges."""
      # Create data with just a DC component
      data = np.ones((1, 1000))
      info = create_info(1, 1000.0, "eeg")
      raw = concatenate_raws([RawArray(data, info) for ii in range(3)])
      assert raw.annotations is not None
      assert len(raw.annotations) == 4
      assert (
          np.isin(raw.annotations.description, ["BAD boundary"]).sum()
          == 2
      )
      assert (
          np.isin(raw.annotations.description, ["EDGE boundary"]).sum()
          == 2
      )
      assert_array_equal(raw.annotations.duration, 0.0)
      events = np.array([[a, 0, 1] for a in [0, 500, 1000, 1500, 2000]])
      epochs = Epochs(
          raw, events, tmin=0, tmax=0.999, baseline=None, preload=True
      )  # 1000 samples long
      assert_equal(len(epochs.drop_log), len(events))
      assert_equal(len(epochs), 3)
      assert_equal([0, 2, 4], epochs.selection)
  
imports: import sys
  from collections import OrderedDict
  from datetime import datetime, timedelta, timezone
  from itertools import repeat
  from pathlib import Path
  import numpy
  import pytest
  from numpy.testing import assert_allclose, assert_array_almost_equal, assert_array_equal, assert_equal
  from pytest import approx
  import mne
  from mne import Annotations, Epochs, annotations_from_events, count_annotations, create_info, events_from_annotations, read_annotations
  from mne.annotations import _handle_meas_date, _read_annotations_txt_parse_header, _sync_onset
  from mne.datasets import testing
  from mne.io import RawArray, concatenate_raws, read_raw_fif
  from mne.utils import _dt_to_stamp, _raw_annot, _record_warnings, _stamp_to_dt, assert_and_remove_boundary_annot, catch_logging, check_version
label_desc: Use image node_id 14 for calling a global function with example usage: test_annotation_epoching() without return types