code: def test_exec_date_dep(
      dag_maker,
      session,
      create_dummy_dag,
      allow_trigger_in_future,
      schedule,
      execution_date,
      is_met,
  ):
      """
      If the dag's execution date is in the future but (allow_trigger_in_future=False or not schedule)
      this dep should fail
      """
      with patch.object(
          settings, "ALLOW_FUTURE_EXEC_DATES", allow_trigger_in_future
      ):
          create_dummy_dag(
              "test_localtaskjob_heartbeat",
              start_date=datetime(2015, 1, 1),
              end_date=datetime(2016, 11, 5),
              schedule=schedule,
              with_dagrun_type=DagRunType.MANUAL,
              session=session,
          )
          (ti,) = dag_maker.create_dagrun(
              execution_date=execution_date
          ).task_instances
          assert RunnableExecDateDep().is_met(ti=ti) == is_met
  
file_path: airflow/tests/ti_deps/deps/test_runnable_exec_date_dep.py
imports: from __future__ import annotations
  from unittest.mock import Mock, patch
  import pytest
  import time_machine
  from airflow import settings
  from airflow.models import DagRun, TaskInstance
  from airflow.ti_deps.deps.runnable_exec_date_dep import RunnableExecDateDep
  from airflow.utils.timezone import datetime
  from airflow.utils.types import DagRunType
label_desc: Use image node_id 2 for calling a global function with example usage: test_exec_date_dep(dag_maker, session, create_dummy_dag, allow_trigger_in_future, schedule, execution_date, is_met) without return types