code: def test_poison_multiple_layers(
      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)
          num_layers = len(classifier.layer_names)
          attack = BullseyePolytopeAttackPyTorch(
              classifier, target, [num_layers - 2, num_layers - 3]
          )
          poison_data, poison_labels = attack.poison(
              x_train[5:10], y_train[5:10]
          )
  
          np.testing.assert_equal(
              poison_data.shape, x_train[5:10].shape
          )
          np.testing.assert_equal(
              poison_labels.shape, y_train[5:10].shape
          )
  
          with pytest.raises(AssertionError):
              np.testing.assert_equal(poison_data, x_train[5:10])
  
      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 3 for calling a global function with example usage: test_poison_multiple_layers(art_warning, get_default_mnist_subset, image_dl_estimator) without return types