@@ -802,6 +802,49 @@ def test_default_monitor_create_and_update_schedule_config_without_customization
802802 _wait_for_schedule_changes_to_apply (monitor = my_default_monitor )
803803
804804
805+ @pytest .mark .skipif (
806+ tests .integ .test_region () in tests .integ .NO_MODEL_MONITORING_REGIONS ,
807+ reason = "ModelMonitoring is not yet supported in this region." ,
808+ )
809+ def test_default_monitor_create_and_simple_update_schedule_config (sagemaker_session , predictor ):
810+ my_default_monitor = DefaultModelMonitor (role = ROLE , sagemaker_session = sagemaker_session )
811+
812+ my_default_monitor .create_monitoring_schedule (
813+ endpoint_input = predictor .endpoint_name ,
814+ schedule_cron_expression = CronExpressionGenerator .hourly (),
815+ )
816+
817+ schedule_description = my_default_monitor .describe_schedule ()
818+ _verify_default_monitoring_schedule (
819+ sagemaker_session = sagemaker_session ,
820+ schedule_description = schedule_description ,
821+ cron_expression = CronExpressionGenerator .hourly (),
822+ )
823+
824+ _wait_for_schedule_changes_to_apply (my_default_monitor )
825+
826+ my_default_monitor .update_monitoring_schedule (
827+ max_runtime_in_seconds = UPDATED_MAX_RUNTIME_IN_SECONDS
828+ )
829+
830+ _wait_for_schedule_changes_to_apply (my_default_monitor )
831+
832+ schedule_description = my_default_monitor .describe_schedule ()
833+
834+ _verify_default_monitoring_schedule (
835+ sagemaker_session = sagemaker_session ,
836+ schedule_description = schedule_description ,
837+ cron_expression = CronExpressionGenerator .hourly (),
838+ max_runtime_in_seconds = UPDATED_MAX_RUNTIME_IN_SECONDS ,
839+ )
840+
841+ _wait_for_schedule_changes_to_apply (monitor = my_default_monitor )
842+
843+ my_default_monitor .stop_monitoring_schedule ()
844+
845+ _wait_for_schedule_changes_to_apply (monitor = my_default_monitor )
846+
847+
805848@pytest .mark .skipif (
806849 tests .integ .test_region () in tests .integ .NO_MODEL_MONITORING_REGIONS ,
807850 reason = "ModelMonitoring is not yet supported in this region." ,
@@ -1644,7 +1687,10 @@ def _verify_default_monitoring_schedule(
16441687 schedule_description ["MonitoringScheduleConfig" ]["ScheduleConfig" ]["ScheduleExpression" ]
16451688 == cron_expression
16461689 )
1647- assert schedule_description ["MonitoringType" ] == "DataQuality"
1690+ if schedule_description .get ("MonitoringType" ) is not None :
1691+ assert schedule_description ["MonitoringType" ] == "DataQuality"
1692+ else :
1693+ assert schedule_description ["MonitoringScheduleConfig" ]["MonitoringType" ] == "DataQuality"
16481694 job_definition_name = schedule_description ["MonitoringScheduleConfig" ].get (
16491695 "MonitoringJobDefinitionName"
16501696 )
0 commit comments