code: def testZeroEpisodes(self, metric_class, expected_result):
      metric = metric_class()
      # Order of args for trajectory methods:
      # observation, action, policy_info, reward, discount
      metric(trajectory.boundary((), (), (), 0.0, 1.0))
      metric(trajectory.first((), (), (), 1.0, 1.0))
      self.assertEqual(expected_result, metric.result())
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from absl.testing import parameterized
  import numpy
  import tensorflow
  from tf_agents.metrics import py_metrics
  from tf_agents.trajectories import time_step
  from tf_agents.trajectories import trajectory
  from tf_agents.utils import nest_utils
label_desc: Use image node_id 3 for calling the PyMetricsTest obj's underlying member method code with example usage: obj.testZeroEpisodes(metric_class, expected_result) without return types