code: def cleanup_report_schedule(report_schedule: ReportSchedule) -> None:
      db.session.query(ReportExecutionLog).filter(
          ReportExecutionLog.report_schedule == report_schedule
      ).delete()
      db.session.query(ReportRecipients).filter(
          ReportRecipients.report_schedule == report_schedule
      ).delete()
  
      db.session.delete(report_schedule)
      db.session.commit()
  
file_path: superset/tests/integration_tests/reports/utils.py
imports: import json
  from contextlib import contextmanager
  from typing import Any, Optional
  from uuid import uuid4
  from flask_appbuilder.security.sqla.models import User
  from superset import db, security_manager
  from superset.models.core import Database
  from superset.models.dashboard import Dashboard
  from superset.models.slice import Slice
  from superset.reports.models import ReportDataFormat, ReportExecutionLog, ReportRecipients, ReportRecipientType, ReportSchedule, ReportScheduleType, ReportState
  from superset.utils.core import override_user
  from tests.integration_tests.test_app import app
  from tests.integration_tests.utils import read_fixture
label_desc: Use image node_id 3 for calling a global function with example usage: cleanup_report_schedule(report_schedule) without return types