code: def setup_dag(self, configured_app):
      with DAG(
          self.dag_id,
          start_date=self.task1_start_date,
          doc_md="details",
      ) as dag:
          task1 = EmptyOperator(
              task_id=self.task_id, params={"foo": "bar"}
          )
          task2 = EmptyOperator(
              task_id=self.task_id2, start_date=self.task2_start_date
          )
  
      with DAG(
          self.mapped_dag_id, start_date=self.task1_start_date
      ) as mapped_dag:
          EmptyOperator(task_id=self.task_id3)
          # Use the private _expand() method to avoid the empty kwargs check.
          # We don't care about how the operator runs here, only its presence.
          EmptyOperator.partial(task_id=self.mapped_task_id)._expand(
              EXPAND_INPUT_EMPTY, strict=False
          )
  
      task1 >> task2
      dag_bag = DagBag(os.devnull, include_examples=False)
      dag_bag.dags = {dag.dag_id: dag, mapped_dag.dag_id: mapped_dag}
      configured_app.dag_bag = dag_bag
  
imports: from __future__ import annotations
  import os
  import unittest.mock
  from datetime import datetime
  import pytest
  from airflow.models import DagBag
  from airflow.models.dag import DAG
  from airflow.models.expandinput import EXPAND_INPUT_EMPTY
  from airflow.models.serialized_dag import SerializedDagModel
  from airflow.operators.empty import EmptyOperator
  from airflow.security import permissions
  from tests.test_utils.api_connexion_utils import assert_401, create_user, delete_user
  from tests.test_utils.db import clear_db_dags, clear_db_runs, clear_db_serialized_dags
label_desc: Use image node_id 1 for calling the TestTaskEndpoint obj's underlying member method code with example usage: obj.setup_dag(configured_app) without return types