code: def test_mp3_compresssion_object(
      art_warning, audio_batch, channels_first
  ):
      try:
          test_input, test_output, sample_rate = audio_batch
          test_input_object = np.array(
              [x for x in test_input], dtype=object
          )
          mp3compression = Mp3Compression(
              sample_rate=sample_rate, channels_first=channels_first
          )
  
          assert_array_equal(
              mp3compression(test_input_object)[0], test_output
          )
  
          grad = mp3compression.estimate_gradient(
              x=test_input_object, grad=np.ones_like(test_input_object)
          )
  
          assert grad.dtype == object
          assert (
              grad.shape == (2, test_input.shape[1], 44100)
              if channels_first
              else (2, 44100, test_input.shape[2])
          )
  
      except ARTTestException as e:
          art_warning(e)
  
file_path: adversarial-robustness-toolbox/tests/defences/preprocessor/test_mp3_compression.py
imports: from __future__ import absolute_import, division, print_function, unicode_literals
  import logging
  import numpy
  import pytest
  from numpy.testing import assert_array_equal
  from art.defences.preprocessor import Mp3Compression
  from tests.utils import ARTTestException
label_desc: Use image node_id 5 for calling a global function with example usage: test_mp3_compresssion_object(art_warning, audio_batch, channels_first) without return types