code: def test_simulate_stc(_get_fwd_labels):
      """Test generation of source estimate."""
      fwd, labels = _get_fwd_labels
      mylabels = []
      for i, label in enumerate(labels):
          new_label = Label(
              vertices=label.vertices,
              pos=label.pos,
              values=2 * i * np.ones(len(label.values)),
              hemi=label.hemi,
              comment=label.comment,
          )
          mylabels.append(new_label)
  
      n_times = 10
      tmin = 0
      tstep = 1e-3
  
      stc_data = np.ones((len(labels), n_times))
      stc = simulate_stc(fwd["src"], mylabels, stc_data, tmin, tstep)
      assert_equal(stc.subject, "sample")
  
      for label in labels:
          idx = _get_idx_label_stc(label, stc)
          assert np.all(stc.data[idx] == 1.0)
          assert stc.data[idx].shape[1] == n_times
  
      # test with function
      def fun(x):
          return x**2
  
      stc = simulate_stc(
          fwd["src"], mylabels, stc_data, tmin, tstep, fun
      )
  
      # the first label has value 0, the second value 2, the third value 6
  
      for i, label in enumerate(labels):
          idx = _get_idx_label_stc(label, stc)
          res = ((2.0 * i) ** 2.0) * np.ones((len(idx), n_times))
          assert_array_almost_equal(stc.data[idx], res)
  
      # degenerate conditions
      label_subset = mylabels[:2]
      data_subset = stc_data[:2]
      stc = simulate_stc(
          fwd["src"], label_subset, data_subset, tmin, tstep, fun
      )
  
      pytest.raises(
          ValueError,
          simulate_stc,
          fwd["src"],
          label_subset,
          data_subset[:-1],
          tmin,
          tstep,
          fun,
      )
      pytest.raises(
          RuntimeError,
          simulate_stc,
          fwd["src"],
          label_subset * 2,
          np.concatenate([data_subset] * 2, axis=0),
          tmin,
          tstep,
          fun,
      )
  
      i = np.where(fwd["src"][0]["inuse"] == 0)[0][0]
      label_single_vert = Label(
          vertices=[i], pos=fwd["src"][0]["rr"][i : i + 1, :], hemi="lh"
      )
      stc = simulate_stc(
          fwd["src"], [label_single_vert], stc_data[:1], tmin, tstep
      )
      assert_equal(len(stc.lh_vertno), 1)
  
file_path: mne-python/mne/simulation/tests/test_source.py
imports: import numpy
  import pytest
  from numpy.testing import assert_array_almost_equal, assert_array_equal, assert_equal
  from mne import convert_forward_solution, pick_types_forward, read_forward_solution, read_label
  from mne.datasets import testing
  from mne.label import Label
  from mne.simulation import SourceSimulator, simulate_sparse_stc, simulate_stc
label_desc: Use image node_id 3 for calling a global function with example usage: test_simulate_stc(_get_fwd_labels) and returns: unknown