docstr: Runs the program and makes sure the consumer can run 10 steps.
docstr_tok: ["Runs","the","program","and","makes","sure","the","consumer","can","run","10","steps","."]
code: def test_consumer_steps(self):
      """Runs the program and makes sure the consumer can run 10 steps."""
      program = make_program(num_producers=2)
  
      # Retrieve the consumer node from the program. Nodes are organized as a
      # mapping of label->nodes, stored as a dict in `program.groups`
      (consumer_node,) = program.groups["consumer"]
      # Disable the automatic execution of its `run()` method.
      consumer_node.disable_run()  # pytype: disable=attribute-error
  
      # Launch all workers declared by the program. Remember to set the launch
      # type here (test & multithreaded).
      lp.launch(program, launch_type="test_mt", test_case=self)
  
      # Dereference `consumer_node`'s courier handle explicitly to obtain courier
      # client of it.
      consumer = consumer_node.create_handle().dereference()
  
      # Success criteria for this integration test defined as consumer being
      # able to take 10 steps.
      for _ in range(10):
          consumer.step()
  
imports: from absl.testing import absltest
  import launchpad
  from launchpad.examples.consumer_producers.program import make_program
label_desc: Use image node_id 1 for calling the LaunchTest obj's underlying member method code with example usage: obj.test_consumer_steps() without return types