code: def test_check_params(
      art_warning, get_default_mnist_subset, image_dl_estimator
  ):
      try:
          (x_train, y_train), (_, _) = get_default_mnist_subset
          classifier, _ = image_dl_estimator(functional=True)
          target = np.expand_dims(x_train[3], 0)
          with pytest.raises(ValueError):
              _ = BullseyePolytopeAttackPyTorch(
                  classifier,
                  target,
                  len(classifier.layer_names) - 2,
                  learning_rate=-1,
              )
          with pytest.raises(ValueError):
              _ = BullseyePolytopeAttackPyTorch(
                  classifier,
                  target,
                  len(classifier.layer_names) - 2,
                  max_iter=-1,
              )
          with pytest.raises(TypeError):
              _ = BullseyePolytopeAttackPyTorch(classifier, target, 2.5)
          with pytest.raises(ValueError):
              _ = BullseyePolytopeAttackPyTorch(
                  classifier,
                  target,
                  len(classifier.layer_names) - 2,
                  opt="new optimizer",
              )
          with pytest.raises(ValueError):
              _ = BullseyePolytopeAttackPyTorch(
                  classifier,
                  target,
                  len(classifier.layer_names) - 2,
                  momentum=1.2,
              )
          with pytest.raises(ValueError):
              _ = BullseyePolytopeAttackPyTorch(
                  classifier,
                  target,
                  len(classifier.layer_names) - 2,
                  decay_iter=-1,
              )
          with pytest.raises(ValueError):
              _ = BullseyePolytopeAttackPyTorch(
                  classifier,
                  target,
                  len(classifier.layer_names) - 2,
                  epsilon=-1,
              )
          with pytest.raises(ValueError):
              _ = BullseyePolytopeAttackPyTorch(
                  classifier,
                  target,
                  len(classifier.layer_names) - 2,
                  dropout=2,
              )
          with pytest.raises(ValueError):
              _ = BullseyePolytopeAttackPyTorch(
                  classifier,
                  target,
                  len(classifier.layer_names) - 2,
                  net_repeat=-1,
              )
          with pytest.raises(ValueError):
              _ = BullseyePolytopeAttackPyTorch(classifier, target, -1)
          with pytest.raises(ValueError):
              _ = BullseyePolytopeAttackPyTorch(
                  classifier,
                  target,
                  len(classifier.layer_names) - 2,
                  decay_coeff=2,
              )
  
      except ARTTestException as e:
          art_warning(e)
  
file_path: adversarial-robustness-toolbox/tests/attacks/poison/test_bullseye_polytope_attack.py
imports: from __future__ import absolute_import, division, print_function, unicode_literals
  import logging
  import numpy
  import pytest
  from art.attacks.poisoning import BullseyePolytopeAttackPyTorch
  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, get_default_mnist_subset, image_dl_estimator) without return types