@@ -56,6 +56,32 @@ def test_get_job(jobs_service):
5656 jobs_service .client .perform_query .assert_called_with ('GET' , '/jobs/get' , data = {'job_id' : 1 }, headers = None , version = '2.1' )
5757
5858
59+ @provide_conf
60+ def test_update_job (jobs_service ):
61+ jobs_service .update_job (None )
62+ jobs_service .client .perform_query .assert_called_with ('POST' , '/jobs/update' , data = {}, headers = None , version = None )
63+
64+ jobs_service .update_job (1 )
65+ jobs_service .client .perform_query .assert_called_with ('POST' , '/jobs/update' , data = {'job_id' : 1 }, headers = None , version = None )
66+
67+ jobs_service .update_job (1 , version = '2.1' )
68+ jobs_service .client .perform_query .assert_called_with ('POST' , '/jobs/update' , data = {'job_id' : 1 }, headers = None , version = '2.1' )
69+
70+ # new_settings_argument
71+ new_settings = {
72+ "name" : "job1" ,
73+ "tags" : {"cost-center" : "engineering" ,"team" : "jobs" }
74+ }
75+ jobs_service .update_job (1 , version = '2.1' , new_settings = new_settings )
76+ jobs_service .client .perform_query .assert_called_with ('POST' , '/jobs/update' , data = {'job_id' : 1 , 'new_settings' : new_settings }, headers = None , version = '2.1' )
77+
78+ # fields_to_remove argument
79+ fields_to_remove = ["libraries" , "schedule" ]
80+ jobs_service .update_job (1 , version = '2.1' , fields_to_remove = fields_to_remove )
81+ jobs_service .client .perform_query .assert_called_with ('POST' , '/jobs/update' , data = {'job_id' : 1 , 'fields_to_remove' : fields_to_remove }, headers = None , version = '2.1' )
82+
83+
84+
5985@provide_conf
6086def test_list_jobs (jobs_service ):
6187 jobs_service .list_jobs ()
@@ -129,6 +155,11 @@ def test_create_job(jobs_service):
129155 jobs_service .create_job (tasks = tasks , version = '2.1' )
130156 jobs_service .client .perform_query .assert_called_with ('POST' , '/jobs/create' , data = {'tasks' : tasks }, headers = None , version = '2.1' )
131157
158+ tasks = {'task_key' : '123' , 'notebook_task' : {'notebook_path' : '/test' }}
159+ tags = {"cost-center" : "engineering" ,"team" : "jobs" }
160+ jobs_service .create_job (tasks = tasks , tags = tags , version = '2.1' )
161+ jobs_service .client .perform_query .assert_called_with ('POST' , '/jobs/create' , data = {'tasks' : tasks , 'tags' : tags }, headers = None , version = '2.1' )
162+
132163
133164@provide_conf
134165def test_create_dbt_task (jobs_service ):
@@ -190,6 +221,13 @@ def test_create_job_invalid_types(jobs_service):
190221 jobs_service .create_job (dbt_task = [])
191222
192223
224+ @provide_conf
225+ def test_update_job_invalid_types (jobs_service ):
226+ with pytest .raises (TypeError , match = 'new_settings' ):
227+ jobs_service .update_job (job_id = None , new_settings = [])
228+
229+
230+
193231@provide_conf
194232def test_submit_run_invalid_types (jobs_service ):
195233 with pytest .raises (TypeError , match = 'new_cluster' ):
0 commit comments