code: def test_design_matrix_FIR_basic_paradigm(
      frame_times, fir_delays, nb_regressors
  ):
      # basic test based on basic_paradigm and FIR
      X, names = design_matrix_light(
          frame_times,
          events=basic_paradigm(),
          hrf_model="FIR",
          drift_model="polynomial",
          drift_order=3,
          fir_delays=fir_delays,
      )
      assert len(names) == nb_regressors
      assert X.shape == (len(frame_times), nb_regressors)
  
imports: from os import path
  import numpy
  import pandas
  import pytest
  from numpy.testing import assert_almost_equal, assert_array_almost_equal, assert_array_equal
  from nilearn._utils.data_gen import basic_paradigm
  from nilearn.glm.first_level.design_matrix import _convolve_regressors, check_design_matrix, create_cosine_drift, make_first_level_design_matrix, make_second_level_design_matrix
  from ._testing import block_paradigm, design_with_negative_onsets, modulated_block_paradigm, modulated_event_paradigm, spm_paradigm
label_desc: Use image node_id 12 for calling a global function with example usage: test_design_matrix_FIR_basic_paradigm(frame_times, fir_delays, nb_regressors) without return types