mirror of
https://github.com/ansible/awx.git
synced 2026-02-28 08:18:43 -03:30
Merge pull request #8386 from john-westcott-iv/issue_8338
Fixing resetting of variables and adding unit test for condition Reviewed-by: https://github.com/apps/softwarefactory-project-zuul
This commit is contained in:
@@ -436,7 +436,7 @@ def main():
|
|||||||
'become_enabled', 'diff_mode', 'allow_simultaneous', 'custom_virtualenv', 'job_slice_count', 'webhook_service',
|
'become_enabled', 'diff_mode', 'allow_simultaneous', 'custom_virtualenv', 'job_slice_count', 'webhook_service',
|
||||||
):
|
):
|
||||||
field_val = module.params.get(field_name)
|
field_val = module.params.get(field_name)
|
||||||
if field_val:
|
if field_val is not None:
|
||||||
new_fields[field_name] = field_val
|
new_fields[field_name] = field_val
|
||||||
|
|
||||||
# Special treatment of extra_vars parameter
|
# Special treatment of extra_vars parameter
|
||||||
|
|||||||
@@ -35,6 +35,51 @@ def test_create_job_template(run_module, admin_user, project, inventory):
|
|||||||
assert jt.inventory_id == inventory.id
|
assert jt.inventory_id == inventory.id
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.django_db
|
||||||
|
def test_resets_job_template_values(run_module, admin_user, project, inventory):
|
||||||
|
|
||||||
|
module_args = {
|
||||||
|
'name': 'foo', 'playbook': 'helloworld.yml',
|
||||||
|
'project': project.name, 'inventory': inventory.name,
|
||||||
|
'extra_vars': {'foo': 'bar'},
|
||||||
|
'job_type': 'run',
|
||||||
|
'state': 'present',
|
||||||
|
'forks': 20,
|
||||||
|
'timeout': 50,
|
||||||
|
'allow_simultaneous': True,
|
||||||
|
'ask_limit_on_launch': True,
|
||||||
|
}
|
||||||
|
|
||||||
|
result = run_module('tower_job_template', module_args, admin_user)
|
||||||
|
|
||||||
|
jt = JobTemplate.objects.get(name='foo')
|
||||||
|
assert jt.forks == 20
|
||||||
|
assert jt.timeout == 50
|
||||||
|
assert jt.allow_simultaneous
|
||||||
|
assert jt.ask_limit_on_launch
|
||||||
|
|
||||||
|
module_args = {
|
||||||
|
'name': 'foo', 'playbook': 'helloworld.yml',
|
||||||
|
'project': project.name, 'inventory': inventory.name,
|
||||||
|
'extra_vars': {'foo': 'bar'},
|
||||||
|
'job_type': 'run',
|
||||||
|
'state': 'present',
|
||||||
|
'forks': 0,
|
||||||
|
'timeout': 0,
|
||||||
|
'allow_simultaneous': False,
|
||||||
|
'ask_limit_on_launch': False,
|
||||||
|
}
|
||||||
|
|
||||||
|
result = run_module('tower_job_template', module_args, admin_user)
|
||||||
|
assert result['changed']
|
||||||
|
|
||||||
|
jt = JobTemplate.objects.get(name='foo')
|
||||||
|
assert jt.forks == 0
|
||||||
|
assert jt.timeout == 0
|
||||||
|
assert not jt.allow_simultaneous
|
||||||
|
assert not jt.ask_limit_on_launch
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.django_db
|
@pytest.mark.django_db
|
||||||
def test_job_launch_with_prompting(run_module, admin_user, project, inventory, machine_credential):
|
def test_job_launch_with_prompting(run_module, admin_user, project, inventory, machine_credential):
|
||||||
JobTemplate.objects.create(
|
JobTemplate.objects.create(
|
||||||
|
|||||||
Reference in New Issue
Block a user