@@ -802,6 +802,49 @@ def test_default_monitor_create_and_update_schedule_config_without_customization
802
802
_wait_for_schedule_changes_to_apply (monitor = my_default_monitor )
803
803
804
804
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
+
805
848
@pytest .mark .skipif (
806
849
tests .integ .test_region () in tests .integ .NO_MODEL_MONITORING_REGIONS ,
807
850
reason = "ModelMonitoring is not yet supported in this region." ,
@@ -1644,7 +1687,10 @@ def _verify_default_monitoring_schedule(
1644
1687
schedule_description ["MonitoringScheduleConfig" ]["ScheduleConfig" ]["ScheduleExpression" ]
1645
1688
== cron_expression
1646
1689
)
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"
1648
1694
job_definition_name = schedule_description ["MonitoringScheduleConfig" ].get (
1649
1695
"MonitoringJobDefinitionName"
1650
1696
)
0 commit comments