class_docstr: Test class for `SpeechReverberationModulationEnergyRatio` metric.
class_docstr_tok: ["Test","class","for","`","SpeechReverberationModulationEnergyRatio","`","metric","."]
docstr: Test functional implementation of metric.
docstr_tok: ["Test","functional","implementation","of","metric","."]
code: def test_srmr_functional(self, preds, fs, fast, norm):
      """Test functional implementation of metric."""
      self.run_functional_metric_test(
          preds=preds,
          target=preds,
          metric_functional=_speech_reverberation_modulation_energy_ratio_cheat,
          reference_metric=partial(
              _ref_metric_batch, fs=fs, fast=fast, norm=norm
          ),
          metric_args={"fs": fs, "fast": fast, "norm": norm},
      )
  
imports: from functools import partial
  from typing import Any, Dict
  import pytest
  import torch
  from srmrpy import srmr
  from torch import Tensor
  from torchmetrics.audio.srmr import SpeechReverberationModulationEnergyRatio
  from torchmetrics.functional.audio.srmr import speech_reverberation_modulation_energy_ratio
  from torchmetrics.utilities.imports import _TORCHAUDIO_GREATER_EQUAL_0_10
  from unittests.helpers import seed_all
  from unittests.helpers.testers import MetricTester
label_desc: Use image node_id 2 for calling the TestSRMR obj's underlying member method code with example usage: obj.test_srmr_functional(preds, fs, fast, norm) without return types