code: def test_handle_exception(self, use_wm_v2):
      FLAGS.lp_worker_manager_v2 = use_wm_v2
  
      def run():
          raise RuntimeError("Launchpad has stopped working")
  
      program = lp_program.Program("test")
      program.add_node(python.PyNode(run), label="run")
  
      with self.assertRaisesRegex(
          RuntimeError, "Launchpad has stopped working"
      ):
          waiter = launch.launch(program, test_case=self)
          waiter.wait()
  
imports: import signal
  import threading
  from absl import flags
  from absl.testing import absltest
  from absl.testing import parameterized
  from launchpad import context
  from launchpad import program
  from launchpad.launch import serialization_test
  from launchpad.launch.test_multi_threading import launch
  from launchpad.nodes.python import node
  from launchpad.program_stopper import program_stopper
  import mock
label_desc: Use image node_id 4 for calling the LaunchTest obj's underlying member method code with example usage: obj.test_handle_exception(use_wm_v2) without return types