code: def testExactAudioLengthMatch(self):
      audio = MonoLoader(
          filename=join(
              testdata.audio_dir, "recorded", "techno_loop.wav"
          )
      )()
      bpmEstimate = 125
      beatPeriod = 21168  # N.B The beat period is 21168 samples for 125 bpm @ 44.1k samp. rate
      silentAudio = zeros(beatPeriod)
  
      # Add non-musical silence to the beginning of the audio
      signal1 = numpy.append(silentAudio, audio)
      confidence = LoopBpmConfidence()(signal1, bpmEstimate)
      self.assertEquals(confidence, 1.0)
  
      # Add non-musical silence to the end of the audio
      signal2 = numpy.append(audio, silentAudio)
      confidence = LoopBpmConfidence()(signal2, bpmEstimate)
      self.assertEquals(confidence, 1.0)
  
      # Concatenate silence at both ends
      signal3 = numpy.append(signal1, silentAudio)
      confidence = LoopBpmConfidence()(signal3, bpmEstimate)
      self.assertEquals(confidence, 1.0)
  
file_path: essentia/test/src/unittests/rhythm/test_loopbpmconfidence.py
imports: from essentia_test import *
  from essentia.standard import MonoLoader, LoopBpmConfidence
label_desc: Use image node_id 4 for calling the TestLoopBpmConfidence obj's underlying member method code with example usage: obj.testExactAudioLengthMatch() without return types