code: def test_MultiShellDeconvModel_response():
      gtab = get_3shell_gtab()
  
      sh_order = 8
      with warnings.catch_warnings():
          warnings.filterwarnings(
              "ignore",
              message=shm.descoteaux07_legacy_msg,
              category=PendingDeprecationWarning,
          )
          response = multi_shell_fiber_response(
              sh_order,
              [0, 1000, 2000, 3500],
              wm_response,
              gm_response,
              csf_response,
          )
      with warnings.catch_warnings():
          warnings.filterwarnings(
              "ignore",
              message=shm.descoteaux07_legacy_msg,
              category=PendingDeprecationWarning,
          )
          model_1 = MultiShellDeconvModel(
              gtab, response, sh_order=sh_order
          )
      responses = np.array([wm_response, gm_response, csf_response])
      with warnings.catch_warnings():
          warnings.filterwarnings(
              "ignore",
              message=shm.descoteaux07_legacy_msg,
              category=PendingDeprecationWarning,
          )
          model_2 = MultiShellDeconvModel(
              gtab, responses, sh_order=sh_order
          )
      response_1 = model_1.response.response
      response_2 = model_2.response.response
      npt.assert_array_almost_equal(response_1, response_2, 0)
  
      npt.assert_raises(
          ValueError, MultiShellDeconvModel, gtab, np.ones((4, 3, 4))
      )
      npt.assert_raises(
          ValueError,
          MultiShellDeconvModel,
          gtab,
          np.ones((3, 3, 4)),
          iso=3,
      )
  
imports: import warnings
  from dipy.reconst.mcsd import mask_for_response_msmt, response_from_mask_msmt, auto_response_msmt
  from dipy.reconst.mcsd import MultiShellDeconvModel, multi_shell_fiber_response
  import numpy
  import numpy.testing
  import pytest
  from dipy.sims.voxel import single_tensor, multi_tensor, add_noise
  from dipy.reconst import shm
  from dipy.data import default_sphere, get_3shell_gtab
  from dipy.core.gradients import GradientTable
  from dipy.testing.decorators import set_random_number_generator
  from dipy.utils.optpkg import optional_package
label_desc: Use image node_id 4 for calling a global function with example usage: test_MultiShellDeconvModel_response() without return types