code: def test_hkernel():
      """test the hrf computation"""
      tr = 2.0
      h = _hrf_kernel("spm", tr)
      assert_almost_equal(h[0], spm_hrf(tr))
      assert len(h) == 1
      h = _hrf_kernel("spm_time", tr)
      assert_almost_equal(h[1], spm_time_derivative(tr))
      assert len(h) == 2
      h = _hrf_kernel("spm_time_dispersion", tr)
      assert_almost_equal(h[2], spm_dispersion_derivative(tr))
      assert len(h) == 3
      h = _hrf_kernel("canonical", tr)
      assert_almost_equal(h[0], glover_hrf(tr))
      assert len(h) == 1
      h = _hrf_kernel("canonical with derivative", tr)
      assert_almost_equal(h[1], glover_time_derivative(tr))
      assert_almost_equal(h[0], glover_hrf(tr))
      assert len(h) == 2
      h = _hrf_kernel("fir", tr, fir_delays=np.arange(4))
      assert len(h) == 4
      for dh in h:
          assert dh.sum() == 16.0
  
imports: import warnings
  import numpy
  import pytest
  from numpy.testing import assert_almost_equal, assert_array_equal
  from ..hemodynamic_models import _hrf_kernel, _orthogonalize, _regressor_names, _resample_regressor, _sample_condition, compute_regressor, glover_hrf, glover_time_derivative, spm_dispersion_derivative, spm_hrf, spm_time_derivative
label_desc: Use image node_id 15 for calling a global function with example usage: test_hkernel() without return types