code: def test_export_raw_edf_does_not_fail_on_empty_header_fields(
      tmp_path,
  ):
      """Test writing a Raw instance with empty header fields to EDF."""
      rng = np.random.RandomState(123456)
  
      ch_types = ["eeg"]
      info = create_info(len(ch_types), sfreq=1000, ch_types=ch_types)
      info["subject_info"] = {
          "his_id": "",
          "first_name": "",
          "middle_name": "",
          "last_name": "",
      }
      info["device_info"] = {"type": "123"}
  
      data = rng.random(size=(len(ch_types), 1000)) * 1e-5
      raw = RawArray(data, info)
  
      raw.export(tmp_path / "test.edf", add_ch_type=True)
  
imports: from contextlib import nullcontext
  from datetime import datetime, timezone
  from pathlib import Path
  import numpy
  import pytest
  from numpy.testing import assert_allclose, assert_array_almost_equal, assert_array_equal
  from mne import Annotations, Epochs, create_info, read_epochs_eeglab, read_evokeds, read_evokeds_mff
  from mne.datasets import misc, testing
  from mne.export import export_evokeds, export_evokeds_mff
  from mne.fixes import _compare_version
  from mne.io import RawArray, read_raw_brainvision, read_raw_edf, read_raw_eeglab, read_raw_fif
  from mne.tests.test_epochs import _get_data
  from mne.utils import _check_edfio_installed, _record_warnings, _resource_path, object_diff
label_desc: Use image node_id 12 for calling a global function with example usage: test_export_raw_edf_does_not_fail_on_empty_header_fields(tmp_path) without return types