code: def test_one_episode(self, discount_spec, reward_spec):
      _, loop = _parameterized_setup(discount_spec, reward_spec)
      result = loop.run_episode()
      self.assertIn("episode_length", result)
      self.assertEqual(EPISODE_LENGTH, result["episode_length"])
      self.assertIn("episode_return", result)
      self.assertIn("steps_per_second", result)
  
file_path: acme/acme/environment_loop_test.py
imports: from typing import Optional
  from acme import environment_loop
  from acme import specs
  from acme import types
  from acme.testing import fakes
  import numpy
  from absl.testing import absltest
  from absl.testing import parameterized
label_desc: Use image node_id 1 for calling the EnvironmentLoopTest obj's underlying member method code with example usage: obj.test_one_episode(discount_spec, reward_spec) without return types