code: def test_deploy_application_basic(serve_instance):
      """Test deploy multiple applications"""
  
      @serve.deployment
      def f():
          return "got f"
  
      @serve.deployment
      def g():
          return "got g"
  
      @serve.deployment(route_prefix="/my_prefix")
      def h():
          return "got h"
  
      @serve.deployment
      class Model1:
          def __call__(self, *args):
              return "got model1"
  
      app = FastAPI()
  
      @serve.deployment(route_prefix="/hello")
      @serve.ingress(app)
      class MyFastAPIDeployment:
          @app.get("/")
          def root(self):
              return "Hello, world!"
  
      # Test function deployment with app name
      f_handle = serve.run(f.bind(), name="app_f")
      assert f_handle.remote().result() == "got f"
      assert requests.get("http://127.0.0.1:8000/").text == "got f"
  
      # Test function deployment with app name and route_prefix
      g_handle = serve.run(
          g.bind(), name="app_g", route_prefix="/app_g"
      )
      assert g_handle.remote().result() == "got g"
      assert requests.get("http://127.0.0.1:8000/app_g").text == "got g"
  
      # Test function deployment with app name and route_prefix set in deployment
      # decorator
      h_handle = serve.run(h.bind(), name="app_h")
      assert h_handle.remote().result() == "got h"
      assert (
          requests.get("http://127.0.0.1:8000/my_prefix").text
          == "got h"
      )
  
      # Test FastAPI
      serve.run(MyFastAPIDeployment.bind(), name="FastAPI")
      assert (
          requests.get("http://127.0.0.1:8000/hello").text
          == '"Hello, world!"'
      )
  
imports: import asyncio
  import os
  import sys
  from typing import Dict, Optional
  import pytest
  import requests
  import starlette.responses
  from fastapi import FastAPI
  import ray
  from ray import serve
  from ray._private.pydantic_compat import BaseModel, ValidationError
  from ray._private.test_utils import SignalActor, wait_for_condition
  from ray.serve._private.api import call_app_builder_with_args_if_necessary
  from ray.serve._private.common import DeploymentID
  from ray.serve._private.constants import SERVE_DEFAULT_APP_NAME
  from ray.serve.deployment import Application
  from ray.serve.exceptions import RayServeException
  from ray.serve.handle import DeploymentHandle, RayServeHandle
label_desc: Use image node_id 19 for calling a global function with example usage: test_deploy_application_basic(serve_instance) and returns: str, str, str, str, str