code: def test_worker_prestart_on_node_manager_start(
      call_ray_start, shutdown_only
  ):
      def num_idle_workers(count):
          result = subprocess.check_output(
              "ps aux | grep ray::IDLE | grep -v grep",
              shell=True,
          )
          return len(result.splitlines()) == count
  
      wait_for_condition(num_idle_workers, count=get_num_cpus())
  
      with ray.init():
          for _ in range(5):
              workers = list_workers(
                  filters=[("worker_type", "=", "WORKER")]
              )
              assert len(workers) == get_num_cpus(), workers
              time.sleep(1)
  
file_path: ray/python/ray/tests/test_node_manager.py
imports: import ray
  from ray.util.state import list_workers
  from ray._private.test_utils import get_load_metrics_report, run_string_as_driver, run_string_as_driver_nonblocking, wait_for_condition, get_resource_usage
  import pytest
  import os
  from ray.util.state import list_objects
  import subprocess
  from ray._private.utils import get_num_cpus
  import time
  import sys
label_desc: Use image node_id 8 for calling a global function with example usage: test_worker_prestart_on_node_manager_start(call_ray_start, shutdown_only) and returns: unknown