code: def test_value_error(
      self, hparams=None, attributes=None, metrics=None
  ):
      if hparams is None:
          hparams = {}
      if attributes is None:
          attributes = {}
      if metrics is None:
          metrics = {}
      report_accessor = _ReportAccessor(self.get_temp_dir())
      materialized_reports = [
          subnetwork.MaterializedReport(
              iteration_number=0,
              name="foo",
              hparams=hparams,
              attributes=attributes,
              metrics=metrics,
              included_in_final_ensemble=True,
          ),
      ]
      with self.assertRaises(ValueError):
          report_accessor.write_iteration_report(
              iteration_number=0,
              materialized_reports=materialized_reports,
          )
  
file_path: adanet/adanet/core/report_accessor_test.py
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from absl.testing import parameterized
  from adanet import subnetwork
  from adanet.core.report_accessor import _ReportAccessor
  import tensorflow.compat.v2
label_desc: Use image node_id 5 for calling the ReportAccessorTest obj's underlying member method code with example usage: obj.test_value_error(hparams, attributes, metrics) without return types