code: def test_deserialization_works_without_opentelemetry(
      ray_start_regular,
  ):
      """
      Test that if a function is serialized with opentelemetry, it can be
      deserialized in a context without opentelemetry
      """
  
      @ray.remote
      def f():
          return 30
  
      fn_bytes = ray.cloudpickle.dumps(f)
      with patch.dict("sys.modules", opentelemetry=None):
          # Ensure that opentelemetry cannot be imported
          with pytest.raises(ModuleNotFoundError):
              import opentelemetry.trace  # noqa: F401
          ray.cloudpickle.loads(fn_bytes)
  
imports: import asyncio
  import glob
  import json
  import os
  import pytest
  import shutil
  from unittest.mock import patch
  import ray
  from ray._private.test_utils import check_call_ray
  from ray.util.tracing.setup_local_tmp_tracing import spans_dir
label_desc: Use image node_id 18 for calling a global function with example usage: test_deserialization_works_without_opentelemetry(ray_start_regular) and returns: int