code: def test_read_spm_ctf():
      """Test CTF reader with omitted samples."""
      raw_fname = op.join(
          spm_path, "MEG", "spm", "SPM_CTF_MEG_example_faces1_3D.ds"
      )
      raw = read_raw_ctf(raw_fname)
      extras = raw._raw_extras[0]
      assert extras["n_samp"] == raw.n_times
      assert extras["n_samp"] != extras["n_samp_tot"]
  
      # Test that LPA, nasion and RPA are correct.
      coord_frames = np.array(
          [d["coord_frame"] for d in raw.info["dig"]]
      )
      assert np.all(coord_frames == FIFF.FIFFV_COORD_HEAD)
      cardinals = {d["ident"]: d["r"] for d in raw.info["dig"]}
      assert (
          cardinals[1][0] < cardinals[2][0] < cardinals[3][0]
      )  # x coord
      assert cardinals[1][1] < cardinals[2][1]  # y coord
      assert cardinals[3][1] < cardinals[2][1]  # y coord
      for key in cardinals.keys():
          assert_allclose(cardinals[key][2], 0, atol=1e-6)
  
imports: import copy
  import os
  import shutil
  from datetime import datetime, timezone
  from os import path
  import numpy
  import pytest
  from numpy import array_equal
  from numpy.testing import assert_allclose, assert_array_equal
  import mne
  import mne.io.ctf.info
  from mne import create_info, events_from_annotations, make_forward_solution, pick_types, read_annotations
  from mne._fiff.compensator import get_current_comp
  from mne._fiff.constants import FIFF
  from mne._fiff.pick import _picks_to_idx
  from mne.datasets import brainstorm, spm_face, testing
  from mne.io import RawArray, read_raw_ctf, read_raw_fif
  from mne.io.ctf.constants import CTF
  from mne.io.ctf.info import _convert_time
  from mne.io.tests.test_raw import _test_raw_reader
  from mne.tests.test_annotations import _assert_annotations_equal
  from mne.transforms import apply_trans
  from mne.utils import _clean_names, _record_warnings, _stamp_to_dt, catch_logging
label_desc: Use image node_id 3 for calling a global function with example usage: test_read_spm_ctf() without return types