code: def test_same_object_many_dags(workflow_start_regular_shared):
      """Ensure that when we dedupe uploads, we upload the object once per DAG,
      since different DAGs shouldn't look in each others object directories.
      """
      from ray.workflow.tests.utils import skip_client_mode_test
  
      # TODO(suquark): Fix workflow with ObjectRefs as inputs under client mode.
      skip_client_mode_test()
  
      @ray.remote
      def f(a):
          return [a[0]]
  
      x = {0: ray.put(10)}
  
      result1 = workflow.run(f.bind(x))
      result2 = workflow.run(f.bind(x))
      with InputNode() as dag_input:
          result3 = workflow.run(f.bind(dag_input.x), x=x)
  
      assert ray.get(*result1) == 10
      assert ray.get(*result2) == 10
      assert ray.get(*result3) == 10
  
file_path: ray/python/ray/workflow/tests/test_dag_to_workflow.py
imports: from ray.tests.conftest import *
  import pytest
  import ray
  from ray import workflow
  from ray.dag import InputNode
label_desc: Use image node_id 3 for calling a global function with example usage: test_same_object_many_dags(workflow_start_regular_shared) and returns: list