code: def testRegressionMultipleValues(self):
      testBpms = [
          120,
          120,
          120,
          120,
          120,
          120,
          120,
          240,
          240,
          240,
          240,
          240,
          240,
          240,
          180,
          180,
          180,
          180,
          180,
          180,
          180,
          90,
          90,
          90,
          90,
          90,
          90,
          90,
      ]
  
      # Check with default threshold (20) and BPM = 120.
      expectedHarmonicBpms = [90, 120, 180, 240]
      harmonicBpms = HarmonicBpm(bpm=120, threshold=20)(testBpms)
      self.assertEqualVector(harmonicBpms, expectedHarmonicBpms)
  
      # Check with default threshold (20) and BPM = 90.
      expectedHarmonicBpms = [90, 120, 180, 240]
      harmonicBpms = HarmonicBpm(bpm=90, threshold=20)(testBpms)
      self.assertEqualVector(harmonicBpms, expectedHarmonicBpms)
  
      # Run a test with a higher threshold that will lead to some outputs being discarded.
  
      # Check with threshold=30 and BPM = 120
      # that all multiples of 30 are included.
      expectedHarmonicBpms = [90, 120, 180, 240]
      harmonicBpms = HarmonicBpm(bpm=120, threshold=30)(testBpms)
      self.assertEqualVector(harmonicBpms, expectedHarmonicBpms)
  
      # Check with threshold=30 and BPM = 90
      # that all multiples of 30 are included.
      expectedHarmonicBpms = [90, 120, 180, 240]
      harmonicBpms = HarmonicBpm(bpm=90, threshold=30)(testBpms)
      self.assertEqualVector(harmonicBpms, expectedHarmonicBpms)
  
file_path: essentia/test/src/unittests/rhythm/test_harmonicbpm.py
imports: from essentia_test import *
  import essentia
label_desc: Use image node_id 9 for calling the TestHarmonicBpm obj's underlying member method code with example usage: obj.testRegressionMultipleValues() without return types