def METHOD_NAME(self, tmp_path, component_tests_config, signal, protocol):
    config = component_tests_config(self._extra_config(protocol))
    with start_cloudflared(
            tmp_path, config, cfd_pre_args=["tunnel", "--ha-connections", "1"], new_process=True, capture_output=False) as cloudflared:
        wait_tunnel_ready(tunnel_url=config.get_url())
        with self.within_grace_period():
            self.terminate_by_signal(cloudflared, signal)