code: def client():
      from litellm.proxy.proxy_server import (
          cleanup_router_config_variables,
      )
  
      cleanup_router_config_variables()
      filepath = os.path.dirname(os.path.abspath(__file__))
      config_fp = (
          f"{filepath}/test_configs/test_config_custom_auth.yaml"
      )
      # initialize can get run in parallel, it sets specific variables for the fast api app, sinc eit gets run in parallel different tests use the wrong variables
      app = FastAPI()
      asyncio.run(initialize(config=config_fp))
  
      app.include_router(router)  # Include your router in the test app
      return TestClient(app)
  
file_path: litellm/litellm/tests/test_proxy_custom_auth.py
imports: import sys, os
  import traceback
  from dotenv import load_dotenv
  import os, io
  import pytest, asyncio
  import litellm
  from litellm import embedding, completion, completion_cost, Timeout
  from litellm import RateLimitError
  from fastapi.testclient import TestClient
  from fastapi import FastAPI
  from litellm.proxy.proxy_server import router, save_worker_config, initialize, ProxyConfig
label_desc: Use image node_id 1 for calling a global function with example usage: client() and returns: TestClient