code: def test_one_time_monitoring_schedule(sagemaker_session):
      my_default_monitor = DefaultModelMonitor(
          role=ROLE,
          instance_count=INSTANCE_COUNT,
          instance_type=INSTANCE_TYPE,
          volume_size_in_gb=VOLUME_SIZE_IN_GB,
          max_runtime_in_seconds=MAX_RUNTIME_IN_SECONDS,
          sagemaker_session=sagemaker_session,
          env=ENVIRONMENT,
          tags=TAGS,
          network_config=NETWORK_CONFIG,
      )
  
      output_s3_uri = os.path.join(
          "s3://",
          sagemaker_session.default_bucket(),
          "integ-test-monitoring-output-bucket",
          str(uuid.uuid4()),
      )
  
      data_captured_destination_s3_uri = os.path.join(
          "s3://",
          sagemaker_session.default_bucket(),
          "sagemaker-serving-batch-transform",
          str(uuid.uuid4()),
      )
  
      batch_transform_input = BatchTransformInput(
          data_captured_destination_s3_uri=data_captured_destination_s3_uri,
          destination="/opt/ml/processing/output",
          dataset_format=MonitoringDatasetFormat.csv(header=False),
      )
  
      statistics = Statistics.from_file_path(
          statistics_file_path=os.path.join(
              tests.integ.DATA_DIR, "monitor/statistics.json"
          ),
          sagemaker_session=sagemaker_session,
      )
  
      constraints = Constraints.from_file_path(
          constraints_file_path=os.path.join(
              tests.integ.DATA_DIR, "monitor/constraints.json"
          ),
          sagemaker_session=sagemaker_session,
      )
  
      # storing the time before creation of monitoring schedule
      start = datetime.now()
  
      my_default_monitor.create_monitoring_schedule(
          batch_transform_input=batch_transform_input,
          output_s3_uri=output_s3_uri,
          statistics=statistics,
          constraints=constraints,
          schedule_cron_expression=CronExpressionGenerator.now(),
          data_analysis_start_time="-PT1H",
          data_analysis_end_time="-PT0H",
          enable_cloudwatch_metrics=ENABLE_CLOUDWATCH_METRICS,
      )
  
      try:
          _wait_for_schedule_changes_to_apply(
              monitor=my_default_monitor
          )
          _wait_for_first_execution_to_start(monitor=my_default_monitor)
  
          # storing the start time as soon as an execution starts
          end = datetime.now()
  
          _wait_for_first_execution_to_complete(
              monitor=my_default_monitor
          )
          my_default_monitor.stop_monitoring_schedule()
          my_default_monitor.delete_monitoring_schedule()
  
          # the execution should start within 10 minutes
          assert (end - start).total_seconds() < 10 * 60
  
      except Exception as e:
          my_default_monitor.stop_monitoring_schedule()
          my_default_monitor.delete_monitoring_schedule()
          raise e
  
imports: from __future__ import absolute_import
  import json
  import os
  import uuid
  import time
  import pytest
  import tests.integ
  import tests.integ.timeout
  from sagemaker.s3 import S3Uploader
  from datetime import datetime, timedelta
  from tests.integ import DATA_DIR
  from sagemaker.model_monitor import DatasetFormat
  from sagemaker.model_monitor import MonitoringDatasetFormat
  from sagemaker.model_monitor import NetworkConfig, Statistics, Constraints
  from sagemaker.model_monitor import ModelMonitor
  from sagemaker.model_monitor import DefaultModelMonitor
  from sagemaker.model_monitor import MonitoringOutput
  from sagemaker.model_monitor import DataCaptureConfig
  from sagemaker.model_monitor import BatchTransformInput
  from sagemaker.model_monitor import DataQualityMonitoringConfig
  from sagemaker.model_monitor import DataQualityDistributionConstraints
  from sagemaker.model_monitor.data_capture_config import _MODEL_MONITOR_S3_PATH
  from sagemaker.model_monitor.data_capture_config import _DATA_CAPTURE_S3_PATH
  from sagemaker.model_monitor import CronExpressionGenerator
  from sagemaker.model_monitor.monitoring_alert import MonitoringAlertSummary
  from sagemaker.processing import ProcessingInput
  from sagemaker.processing import ProcessingOutput
  from sagemaker.tensorflow.model import TensorFlowModel
  from sagemaker.utils import unique_name_from_base
  from tests.integ.kms_utils import get_or_create_kms_key
  from tests.integ.retry import retries
label_desc: Use image node_id 37 for calling a global function with example usage: test_one_time_monitoring_schedule(sagemaker_session) without return types