33
33
"default_args" : {"owner" : "custom_owner" },
34
34
"description" : "this is an example dag" ,
35
35
"schedule_interval" : "0 3 * * *" ,
36
- "tags" : ["tag1" ,"tag2" ],
36
+ "tags" : ["tag1" , "tag2" ],
37
37
"tasks" : {
38
38
"task_1" : {
39
39
"operator" : "airflow.operators.bash_operator.BashOperator" ,
40
40
"bash_command" : "echo 1" ,
41
- "execution_timeout_secs" : 5 ,
41
+ "execution_timeout_secs" : 5 ,
42
42
},
43
43
"task_2" : {
44
44
"operator" : "airflow.operators.bash_operator.BashOperator" ,
63
63
"task_group_2" : {
64
64
"dependencies" : ["task_group_1" ],
65
65
},
66
- "task_group_3" : {}
66
+ "task_group_3" : {},
67
67
},
68
68
"tasks" : {
69
69
"task_1" : {
110
110
},
111
111
"description" : "this is an example dag" ,
112
112
"schedule_interval" : "0 3 * * *" ,
113
- "tags" : ["tag1" ,"tag2" ],
113
+ "tags" : ["tag1" , "tag2" ],
114
114
"on_failure_callback" : f"{ __name__ } .print_context_callback" ,
115
115
"on_success_callback" : f"{ __name__ } .print_context_callback" ,
116
116
"sla_miss_callback" : f"{ __name__ } .print_context_callback" ,
117
117
"tasks" : {
118
118
"task_1" : {
119
119
"operator" : "airflow.operators.bash_operator.BashOperator" ,
120
120
"bash_command" : "echo 1" ,
121
- "execution_timeout_secs" : 5 ,
121
+ "execution_timeout_secs" : 5 ,
122
122
"on_failure_callback" : f"{ __name__ } .print_context_callback" ,
123
123
"on_success_callback" : f"{ __name__ } .print_context_callback" ,
124
124
"on_execute_callback" : f"{ __name__ } .print_context_callback" ,
@@ -175,7 +175,7 @@ def test_get_dag_params():
175
175
"task_1" : {
176
176
"operator" : "airflow.operators.bash_operator.BashOperator" ,
177
177
"bash_command" : "echo 1" ,
178
- "execution_timeout_secs" : 5
178
+ "execution_timeout_secs" : 5 ,
179
179
},
180
180
"task_2" : {
181
181
"operator" : "airflow.operators.bash_operator.BashOperator" ,
@@ -202,7 +202,11 @@ def test_get_dag_params_no_start_date():
202
202
def test_make_task_valid ():
203
203
td = dagbuilder .DagBuilder ("test_dag" , DAG_CONFIG , DEFAULT_CONFIG )
204
204
operator = "airflow.operators.bash_operator.BashOperator"
205
- task_params = {"task_id" : "test_task" , "bash_command" : "echo 1" ,"execution_timeout_secs" :5 }
205
+ task_params = {
206
+ "task_id" : "test_task" ,
207
+ "bash_command" : "echo 1" ,
208
+ "execution_timeout_secs" : 5 ,
209
+ }
206
210
actual = td .make_task (operator , task_params )
207
211
assert actual .task_id == "test_task"
208
212
assert actual .bash_command == "echo 1"
@@ -258,8 +262,8 @@ def test_build():
258
262
assert isinstance (actual ["dag" ], DAG )
259
263
assert len (actual ["dag" ].tasks ) == 3
260
264
assert actual ["dag" ].task_dict ["task_1" ].downstream_task_ids == {"task_2" , "task_3" }
261
- if version .parse (AIRFLOW_VERSION ) >= version .parse (' 1.10.8' ) :
262
- assert actual ["dag" ].tags == ["tag1" ,"tag2" ]
265
+ if version .parse (AIRFLOW_VERSION ) >= version .parse (" 1.10.8" ) :
266
+ assert actual ["dag" ].tags == ["tag1" , "tag2" ]
263
267
264
268
265
269
def test_get_dag_params ():
@@ -274,7 +278,10 @@ def test_get_dag_params():
274
278
},
275
279
"schedule_interval" : "0 3 * * *" ,
276
280
"task_groups" : {
277
- "task_group_1" : {"tooltip" : "this is a task group" , "dependencies" : ["task_1" ]},
281
+ "task_group_1" : {
282
+ "tooltip" : "this is a task group" ,
283
+ "dependencies" : ["task_1" ],
284
+ },
278
285
"task_group_2" : {"dependencies" : ["task_group_1" ]},
279
286
"task_group_3" : {},
280
287
},
@@ -332,17 +339,24 @@ def test_build_task_groups():
332
339
td .build ()
333
340
else :
334
341
actual = td .build ()
335
- task_group_1 = {t for t in actual ["dag" ].task_dict if t .startswith ("task_group_1" )}
336
- task_group_2 = {t for t in actual ["dag" ].task_dict if t .startswith ("task_group_2" )}
342
+ task_group_1 = {
343
+ t for t in actual ["dag" ].task_dict if t .startswith ("task_group_1" )
344
+ }
345
+ task_group_2 = {
346
+ t for t in actual ["dag" ].task_dict if t .startswith ("task_group_2" )
347
+ }
337
348
assert actual ["dag_id" ] == "test_dag"
338
349
assert isinstance (actual ["dag" ], DAG )
339
350
assert len (actual ["dag" ].tasks ) == 6
340
- assert actual ["dag" ].task_dict ["task_1" ].downstream_task_ids == {"task_group_1.task_2" }
351
+ assert actual ["dag" ].task_dict ["task_1" ].downstream_task_ids == {
352
+ "task_group_1.task_2"
353
+ }
341
354
assert actual ["dag" ].task_dict ["task_group_1.task_2" ].downstream_task_ids == {
342
355
"task_group_1.task_3"
343
356
}
344
357
assert actual ["dag" ].task_dict ["task_group_1.task_3" ].downstream_task_ids == {
345
- "task_4" , "task_group_2.task_5" ,
358
+ "task_4" ,
359
+ "task_group_2.task_5" ,
346
360
}
347
361
assert actual ["dag" ].task_dict ["task_group_2.task_5" ].downstream_task_ids == {
348
362
"task_group_2.task_6" ,
@@ -360,7 +374,9 @@ def test_make_task_groups():
360
374
}
361
375
dag = "dag"
362
376
task_groups = dagbuilder .DagBuilder .make_task_groups (task_group_dict , dag )
363
- expected = MockTaskGroup (tooltip = "this is a task group" , group_id = "task_group" , dag = dag )
377
+ expected = MockTaskGroup (
378
+ tooltip = "this is a task group" , group_id = "task_group" , dag = dag
379
+ )
364
380
if version .parse (AIRFLOW_VERSION ) < version .parse ("2.0.0" ):
365
381
assert task_groups == {}
366
382
else :
@@ -371,6 +387,7 @@ def test_make_task_groups_empty():
371
387
task_groups = dagbuilder .DagBuilder .make_task_groups ({}, None )
372
388
assert task_groups == {}
373
389
390
+
374
391
def print_context_callback (context , ** kwargs ):
375
392
print (context )
376
393
@@ -393,10 +410,11 @@ def test_make_task_with_callback():
393
410
assert isinstance (actual , PythonOperator )
394
411
assert callable (actual .on_failure_callback )
395
412
assert callable (actual .on_success_callback )
396
- if version .parse (AIRFLOW_VERSION ) >= version .parse (' 2.0.0' ) :
413
+ if version .parse (AIRFLOW_VERSION ) >= version .parse (" 2.0.0" ) :
397
414
assert callable (actual .on_execute_callback )
398
415
assert callable (actual .on_retry_callback )
399
416
417
+
400
418
def test_make_dag_with_callback ():
401
419
td = dagbuilder .DagBuilder ("test_dag" , DAG_CONFIG_CALLBACK , DEFAULT_CONFIG )
402
- td .build ()
420
+ td .build ()
0 commit comments