class_docstr: Tests that apply to more than 1 Airflow component so we don't have to repeat tests everywhere.
  
  The one general exception will be the KubernetesExecutor PodTemplateFile, as it requires extra test setup.
code: def test_have_all_variables(self):
      docs = render_chart(
          values={},
          show_only=[
              "templates/scheduler/scheduler-deployment.yaml",
              "templates/workers/worker-deployment.yaml",
              "templates/webserver/webserver-deployment.yaml",
              "templates/triggerer/triggerer-deployment.yaml",
              "templates/dag-processor/dag-processor-deployment.yaml",
          ],
      )
      expected_vars = [
          "AIRFLOW__CORE__FERNET_KEY",
          "AIRFLOW_HOME",
          "AIRFLOW__CORE__SQL_ALCHEMY_CONN",
          "AIRFLOW__DATABASE__SQL_ALCHEMY_CONN",
          "AIRFLOW_CONN_AIRFLOW_DB",
          "AIRFLOW__WEBSERVER__SECRET_KEY",
          "AIRFLOW__CELERY__BROKER_URL",
      ]
      expected_vars_in_worker = ["DUMB_INIT_SETSID"] + expected_vars
      for doc in docs:
          component = doc["metadata"]["labels"]["component"]
          variables = (
              expected_vars_in_worker
              if component == "worker"
              else expected_vars
          )
          assert variables == jmespath.search(
              "spec.template.spec.containers[0].env[*].name", doc
          ), f"Wrong vars in {component}"
  
file_path: airflow/helm_tests/airflow_aux/test_airflow_common.py
imports: from __future__ import annotations
  import jmespath
  import pytest
  from tests.charts.helm_template_generator import render_chart
label_desc: Use image node_id 9 for calling the TestAirflowCommon obj's underlying member method code with example usage: obj.test_have_all_variables() without return types