code: def test_images(
      art_warning,
      fix_get_mnist_subset,
      image_dl_estimator_for_attack,
      framework,
      targeted,
  ):
      try:
          classifier = image_dl_estimator_for_attack(BoundaryAttack)
          attack = BoundaryAttack(
              estimator=classifier,
              targeted=targeted,
              max_iter=20,
              verbose=False,
          )
          if targeted:
              backend_targeted_images(attack, fix_get_mnist_subset)
          else:
              back_end_untargeted_images(
                  attack, fix_get_mnist_subset, framework
              )
      except ARTTestException as e:
          art_warning(e)
  
file_path: adversarial-robustness-toolbox/tests/attacks/evasion/test_boundary.py
imports: import pytest
  import logging
  from art.attacks.evasion import BoundaryAttack
  from art.estimators.estimator import BaseEstimator
  from art.estimators.classification.classifier import ClassifierMixin
  from tests.attacks.utils import backend_targeted_tabular, backend_untargeted_tabular, backend_targeted_images
  from tests.attacks.utils import back_end_untargeted_images, backend_test_classifier_type_check_fail
  from tests.utils import ARTTestException
label_desc: Use image node_id 3 for calling a global function with example usage: test_images(art_warning, fix_get_mnist_subset, image_dl_estimator_for_attack, framework, targeted) without return types