def test_delay_update(mock_me): rc = RunnerCallback() rc.delay_update(foo='bar') assert rc.extra_update_fields == {'foo': 'bar'} rc.delay_update(foo='foobar') assert rc.extra_update_fields == {'foo': 'foobar'} rc.delay_update(bar='foo') assert rc.get_delayed_update_fields() == { 'foo': 'foobar', 'bar': 'foo', 'emitted_events': 0 }
def test_special_ansible_runner_message(mock_me): rc = RunnerCallback() rc.delay_update( result_traceback= 'Traceback:\ngot an unexpected keyword argument\nFile: foo.py') rc.delay_update( result_traceback= 'Traceback:\ngot an unexpected keyword argument\nFile: bar.py') assert rc.get_delayed_update_fields().get('result_traceback') == ( 'Traceback:\ngot an unexpected keyword argument\nFile: foo.py\n' 'Traceback:\ngot an unexpected keyword argument\nFile: bar.py\n' f'{ANSIBLE_RUNNER_NEEDS_UPDATE_MESSAGE}')