code: def test_rpa_has_expected_values_octave_error(self):
      rpa = ddsp_metrics.F0Metrics(self.sample_rate, self.frame_rate)
      f0 = self.batch_of_sin_feats["f0_hz"]
      rpa.update_state(self.batch_of_sin_feats, f0 * 2)
      self.assertEqual(rpa.metrics["raw_pitch_accuracy"].result(), 0.0)
      self.assertEqual(rpa.metrics["raw_chroma_accuracy"].result(), 1.0)
  
imports: from unittest import mock
  from absl.testing import parameterized
  import ddsp
  from ddsp.test_util import gen_np_batched_sinusoids
  from ddsp.test_util import gen_np_sinusoid
  import ddsp.training.metrics
  import numpy
  import tensorflow.compat.v2
label_desc: Use image node_id 9 for calling the MetricsObjectsTest obj's underlying member method code with example usage: obj.test_rpa_has_expected_values_octave_error() without return types