code: def infidelity_assert(
      self,
      model: Module,
      attributions: TensorOrTupleOfTensorsGeneric,
      inputs: TensorOrTupleOfTensorsGeneric,
      expected: Tensor,
      additional_args: Any = None,
      baselines: BaselineType = None,
      n_perturb_samples: int = 10,
      target: TargetType = None,
      max_batch_size: int = None,
      multi_input: bool = True,
      perturb_func: Callable = _local_perturb_func,
      normalize: bool = False,
      **kwargs: Any,
  ) -> Tensor:
      infid = infidelity(
          model,
          perturb_func,
          inputs,
          attributions,
          additional_forward_args=additional_args,
          target=target,
          baselines=baselines,
          n_perturb_samples=n_perturb_samples,
          max_examples_per_batch=max_batch_size,
          normalize=normalize,
      )
      assertTensorAlmostEqual(self, infid, expected, 0.05)
      return infid
  
imports: import typing
  from typing import Any, Callable, cast, List, Tuple, Union
  import torch
  from captum._utils.typing import BaselineType, TargetType, TensorOrTupleOfTensorsGeneric
  from captum.attr import Attribution, DeepLift, FeatureAblation, IntegratedGradients, Saliency
  from captum.metrics import infidelity, infidelity_perturb_func_decorator
  from tests.helpers.basic import assertTensorAlmostEqual, BaseTest
  from tests.helpers.basic_models import BasicModel2, BasicModel4_MultiArgs, BasicModel_ConvNet_One_Conv, BasicModel_MultiLayer
  from torch import Tensor
  from torch.nn import Module
label_desc: Use image node_id 14 for calling the Test obj's underlying member method code with example usage: obj.infidelity_assert(model, attributions, inputs, expected, additional_args, baselines, n_perturb_samples, target, max_batch_size, multi_input, perturb_func, normalize) and returns: infid