def METHOD_NAME(art_warning, image_batch, percent_poison, channels_first):
    x, y = image_batch
    backdoor = PoisoningAttackBackdoor(add_single_bd)
    try:
        attack = BadDetObjectDisappearanceAttack(
            backdoor=backdoor,
            class_source=0,
            percent_poison=percent_poison,
            channels_first=channels_first,
        )
        poison_data, poison_labels = attack.poison(x, y)
        np.testing.assert_equal(poison_data.shape, x.shape)
        if percent_poison == 1.0:
            assert poison_labels[0]["boxes"].shape != y[0]["boxes"].shape
            assert poison_labels[0]["labels"].shape != y[0]["labels"].shape
    except ARTTestException as e:
        art_warning(e)