code: def test_check_params(art_warning, fix_get_rcnn):
      try:
          frcnn = fix_get_rcnn
  
          with pytest.raises(ValueError):
              _ = DPatch(frcnn, patch_shape=(1.0, 2.0, 3.0))
          with pytest.raises(ValueError):
              _ = DPatch(frcnn, patch_shape=(1, 2, 3, 4))
  
          with pytest.raises(ValueError):
              _ = DPatch(frcnn, learning_rate=1)
          with pytest.raises(ValueError):
              _ = DPatch(frcnn, learning_rate=-1.0)
  
          with pytest.raises(ValueError):
              _ = DPatch(frcnn, max_iter=1.0)
          with pytest.raises(ValueError):
              _ = DPatch(frcnn, max_iter=-1)
  
          with pytest.raises(ValueError):
              _ = DPatch(frcnn, batch_size=1.0)
          with pytest.raises(ValueError):
              _ = DPatch(frcnn, batch_size=-1)
  
          with pytest.raises(ValueError):
              _ = DPatch(frcnn, verbose="true")
  
      except ARTTestException as e:
          art_warning(e)
  
file_path: adversarial-robustness-toolbox/tests/attacks/evasion/test_dpatch.py
imports: import logging
  import numpy
  import pytest
  from art.attacks.evasion import DPatch
  from art.estimators.estimator import BaseEstimator, LossGradientsMixin
  from art.estimators.object_detection.object_detector import ObjectDetectorMixin
  from tests.attacks.utils import backend_test_classifier_type_check_fail
  from tests.utils import master_seed
  from tests.utils import ARTTestException
label_desc: Use image node_id 4 for calling a global function with example usage: test_check_params(art_warning, fix_get_rcnn) without return types