Exemple #1
0
def test_on_render_hook_is_executed(tmp_directory):
    hook.count = 0

    dag = DAG()
    PythonCallable(touch_root, File('file.txt'), dag, name='t')
    dag.on_render = hook

    dag.render()

    assert hook.count == 1
Exemple #2
0
def test_on_render_crashes(tmp_directory):
    dag = DAG()
    PythonCallable(touch_root, File('file.txt'), dag, name='t')
    dag.on_render = hook_crashing

    with pytest.raises(DAGRenderError) as excinfo:
        dag.build()

    msg = 'Exception when running on_render for DAG "No name": crash!'
    assert str(excinfo.value) == msg
    assert 'crash!' in str(excinfo.getrepr())
    assert dag._exec_status == DAGStatus.ErroredRender