code: def test_ordered_response_cache_incomplete_response():
      """
      Tests case where an ordered cache entry is populated after a long time. Any
      new threads attempting to access that entry should sleep until the response
      is ready.
      """
      cache = OrderedResponseCache()
  
      def populate_cache():
          time.sleep(2)
          cache.update_cache(15, "vwxyz")
  
      cache.check_cache(15)  # shouldn't block
      t = threading.Thread(target=populate_cache, args=())
      t.start()
      # Should block until other thread populates cache
      assert cache.check_cache(15) == "vwxyz"
      t.join()
  
file_path: ray/python/ray/tests/test_response_cache.py
imports: from ray.util.client.common import _id_is_newer, ResponseCache, OrderedResponseCache, INT32_MAX
  import threading
  import time
  import pytest
label_desc: Use image node_id 5 for calling a global function with example usage: test_ordered_response_cache_incomplete_response() without return types