code: def test_add_env(manifest):
      """Test that env vars are added to custom k8s specs."""
      env = {
          "TEST_ENV": "test_value",
          "TEST_ENV_2": "test_value_2",
          "WANDB_RUN_ID": "test_run_id",
      }
      add_wandb_env(manifest, env)
      assert manifest["spec"]["template"]["spec"]["containers"][0][
          "env"
      ] == [
          {"name": "MY_ENV_VAR", "value": "MY_VALUE"},
          {"name": "TEST_ENV", "value": "test_value"},
          {"name": "TEST_ENV_2", "value": "test_value_2"},
          {"name": "WANDB_RUN_ID", "value": "test_run_id"},
      ]
      assert manifest["spec"]["template"]["spec"]["containers"][1][
          "env"
      ] == [
          {"name": "TEST_ENV", "value": "test_value"},
          {"name": "TEST_ENV_2", "value": "test_value_2"},
      ]
  
imports: import asyncio
  import base64
  import json
  from typing import Any
  from unittest.mock import MagicMock
  import pytest
  import wandb
  from kubernetes_asyncio.client import ApiException
  from wandb.sdk.launch._project_spec import LaunchProject
  from wandb.sdk.launch.errors import LaunchError
  from wandb.sdk.launch.runner.kubernetes_monitor import CustomResource, LaunchKubernetesMonitor, _is_container_creating, _log_err_task_callback, _state_from_conditions, _state_from_replicated_status
  from wandb.sdk.launch.runner.kubernetes_runner import KubernetesRunner, KubernetesSubmittedRun, add_entrypoint_args_overrides, add_label_to_pods, add_wandb_env, maybe_create_imagepull_secret
label_desc: Use image node_id 3 for calling a global function with example usage: test_add_env(manifest) without return types