code: def test_normalize_data():
      sig = np.arange(1, 66)[::-1]
  
      where_b0 = np.zeros(65, "bool")
      where_b0[0] = True
      assert_raises(ValueError, normalize_data, sig, where_b0, out=sig)
  
      norm_sig = normalize_data(sig, where_b0, min_signal=1)
      assert_array_almost_equal(norm_sig, sig / 65.0)
      norm_sig = normalize_data(sig, where_b0, min_signal=5)
      assert_array_almost_equal(norm_sig[-5:], 5 / 65.0)
  
      where_b0[[0, 1]] = [True, True]
      norm_sig = normalize_data(sig, where_b0, min_signal=1)
      assert_array_almost_equal(norm_sig, sig / 64.5)
      norm_sig = normalize_data(sig, where_b0, min_signal=5)
      assert_array_almost_equal(norm_sig[-5:], 5 / 64.5)
  
      sig = sig * np.ones((2, 3, 1))
  
      where_b0[[0, 1]] = [True, False]
      norm_sig = normalize_data(sig, where_b0, min_signal=1)
      assert_array_almost_equal(norm_sig, sig / 65.0)
      norm_sig = normalize_data(sig, where_b0, min_signal=5)
      assert_array_almost_equal(norm_sig[..., -5:], 5 / 65.0)
  
      where_b0[[0, 1]] = [True, True]
      norm_sig = normalize_data(sig, where_b0, min_signal=1)
      assert_array_almost_equal(norm_sig, sig / 64.5)
      norm_sig = normalize_data(sig, where_b0, min_signal=5)
      assert_array_almost_equal(norm_sig[..., -5:], 5 / 64.5)
  
imports: import warnings
  import numpy
  import numpy.linalg
  import numpy.testing
  from dipy.testing import assert_true
  from numpy.testing import assert_array_equal, assert_array_almost_equal, assert_equal, assert_raises
  from scipy.special import sph_harm
  from dipy.core.sphere import hemi_icosahedron, Sphere
  from dipy.core.gradients import gradient_table
  from dipy.core.interpolation import NearestNeighborInterpolator
  from dipy.sims.voxel import single_tensor
  from dipy.direction.peaks import peak_directions
  from dipy.reconst.shm import sf_to_sh, sh_to_sf
  from dipy.sims.voxel import multi_tensor_odf
  from dipy.data import mrtrix_spherical_functions
  from dipy.reconst import odf
  from dipy.reconst.shm import real_sh_descoteaux_from_index, real_sym_sh_basis, real_sym_sh_mrtrix, real_sh_descoteaux, real_sh_tournier, sph_harm_ind_list, order_from_ncoef, OpdtModel, normalize_data, hat, lcr_matrix, smooth_pinv, bootstrap_data_array, bootstrap_data_voxel, ResidualBootstrapWrapper, CsaOdfModel, QballModel, SphHarmFit, spherical_harmonics, anisotropic_power, calculate_max_order, sh_to_sf_matrix, gen_dirac, convert_sh_to_full_basis, convert_sh_from_legacy, convert_sh_to_legacy, convert_sh_descoteaux_tournier, descoteaux07_legacy_msg, tournier07_legacy_msg
label_desc: Use image node_id 12 for calling a global function with example usage: test_normalize_data() without return types