Allow modification of schedule if there are two of the same name (#12407)

This commit is contained in:
Tom Page
2022-06-29 00:23:54 +01:00
committed by GitHub
parent c586f8bbc6
commit b70231f7d0
3 changed files with 48 additions and 3 deletions

View File

@@ -6,7 +6,7 @@ import pytest
from ansible.errors import AnsibleError
from awx.main.models import Schedule
from awx.main.models import JobTemplate, Schedule
from awx.api.serializers import SchedulePreviewSerializer
@@ -24,6 +24,19 @@ def test_create_schedule(run_module, job_template, admin_user):
assert schedule.rrule == my_rrule
@pytest.mark.django_db
def test_delete_same_named_schedule(run_module, project, inventory, admin_user):
jt1 = JobTemplate.objects.create(name='jt1', project=project, inventory=inventory, playbook='helloworld.yml')
jt2 = JobTemplate.objects.create(name='jt2', project=project, inventory=inventory, playbook='helloworld2.yml')
Schedule.objects.create(name='Some Schedule', rrule='DTSTART:20300112T210000Z RRULE:FREQ=DAILY;INTERVAL=1', unified_job_template=jt1)
Schedule.objects.create(name='Some Schedule', rrule='DTSTART:20300112T210000Z RRULE:FREQ=DAILY;INTERVAL=1', unified_job_template=jt2)
result = run_module('schedule', {'name': 'Some Schedule', 'unified_job_template': 'jt1', 'state': 'absent'}, admin_user)
assert not result.get('failed', False), result.get('msg', result)
assert Schedule.objects.filter(name='Some Schedule').count() == 1
@pytest.mark.parametrize(
"freq, kwargs, expect",
[