code: def test_reading_unknown_exr_type_fails(self):
      image, channels = _MakeTestImage(3, np.float16)
      with tempfile.NamedTemporaryFile() as temp:
          exr.write_exr(temp.name, image, channels)
          exr_file = OpenEXR.InputFile(temp.name)
          # Deliberately break the R channel header info. A mock InputFile is
          # required to override the header() method.
          header_dict = exr_file.header()
          header_dict["channels"][
              "R"
          ].type.v = -1  # Any bad value will do.
          make_mock_exr = collections.namedtuple(
              "MockExr", ["header", "channel"]
          )
          mock_broken_exr = make_mock_exr(
              lambda: header_dict, exr_file.channel
          )
          with self.assertRaisesRegexp(
              RuntimeError, "Unknown EXR channel type"
          ):
              _ = exr.channels_to_ndarray(
                  mock_broken_exr, ["R", "G", "B"]
              )
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import collections
  import tempfile
  from absl.testing import parameterized
  import Imath
  import numpy
  import OpenEXR
  from six.moves import range
  from tensorflow_graphics.io import exr
  from tensorflow_graphics.util import test_case
label_desc: Use image node_id 5 for calling the ExrTest obj's underlying member method code with example usage: obj.test_reading_unknown_exr_type_fails() without return types