From 2e03a646a5e4657cfdc75a2b561191bfe5baa064 Mon Sep 17 00:00:00 2001 From: Chris Church Date: Thu, 5 Sep 2013 07:57:44 -0400 Subject: [PATCH] Fixes AC-402. Fix issues arising from unit tests. --- awx/main/models/__init__.py | 3 ++- awx/main/serializers.py | 3 +-- awx/main/tasks.py | 2 -- awx/main/tests/commands.py | 2 +- awx/main/tests/jobs.py | 8 +++---- awx/main/tests/tasks.py | 46 ++++++++++++++++++------------------- awx/main/views.py | 2 +- 7 files changed, 32 insertions(+), 34 deletions(-) diff --git a/awx/main/models/__init__.py b/awx/main/models/__init__.py index 4e32421ca4..d97b12a490 100644 --- a/awx/main/models/__init__.py +++ b/awx/main/models/__init__.py @@ -692,7 +692,8 @@ class Project(CommonModel): @property def can_update(self): - return bool(self.scm_type and not self.current_update) + # FIXME: Prevent update when another one is active! + return bool(self.scm_type)# and not self.current_update) def update(self, **kwargs): if self.can_update: diff --git a/awx/main/serializers.py b/awx/main/serializers.py index 970c7c17f2..c9d5c2d3ae 100644 --- a/awx/main/serializers.py +++ b/awx/main/serializers.py @@ -227,7 +227,6 @@ class ProjectSerializer(BaseSerializer): def validate_local_path(self, attrs, source): # Don't allow assigning a local_path used by another project. # Don't allow assigning a local_path when scm_type is set. - print attrs, source, self.object valid_local_paths = Project.get_local_path_choices() if self.object: scm_type = attrs.get('scm_type', self.object.scm_type) @@ -542,7 +541,7 @@ class JobTemplateSerializer(BaseSerializer): class JobSerializer(BaseSerializer): - passwords_needed_to_start = serializers.Field(source='get_passwords_needed_to_start') + passwords_needed_to_start = serializers.Field(source='passwords_needed_to_start') class Meta: model = Job diff --git a/awx/main/tasks.py b/awx/main/tasks.py index e6d56243e4..fdc8ca83c7 100644 --- a/awx/main/tasks.py +++ b/awx/main/tasks.py @@ -324,8 +324,6 @@ class RunJob(BaseTask): if not super(RunJob, self).pre_run_check(job, **kwargs): return False # FIXME: Check if job is waiting on any projects that are being updated. - if job.project.has_active_updates: - pass return True def post_run_hook(self, job): diff --git a/awx/main/tests/commands.py b/awx/main/tests/commands.py index 51b91dc5d3..1daaad259c 100644 --- a/awx/main/tests/commands.py +++ b/awx/main/tests/commands.py @@ -352,7 +352,7 @@ class CleanupJobsTest(BaseCommandMixin, BaseLiveServerTest): job_template = self.create_test_job_template() job = self.create_test_job(job_template=job_template) self.assertEqual(job.status, 'new') - self.assertFalse(job.get_passwords_needed_to_start()) + self.assertFalse(job.passwords_needed_to_start) self.assertTrue(job.start()) self.assertEqual(job.status, 'pending') job = Job.objects.get(pk=job.pk) diff --git a/awx/main/tests/jobs.py b/awx/main/tests/jobs.py index 0114ae5b5e..58a5289671 100644 --- a/awx/main/tests/jobs.py +++ b/awx/main/tests/jobs.py @@ -430,10 +430,10 @@ class BaseJobTestMixin(BaseTestMixin): class JobTemplateTest(BaseJobTestMixin, django.test.TestCase): JOB_TEMPLATE_FIELDS = ('id', 'url', 'related', 'summary_fields', 'created', - 'name', 'description', 'job_type', 'inventory', - 'project', 'playbook', 'credential', 'forks', - 'limit', 'verbosity', 'extra_vars', 'job_tags', - 'host_config_key',) + 'modified', 'name', 'description', 'job_type', + 'inventory', 'project', 'playbook', 'credential', + 'forks', 'limit', 'verbosity', 'extra_vars', + 'job_tags', 'host_config_key',) def test_get_job_template_list(self): url = reverse('main:job_template_list') diff --git a/awx/main/tests/tasks.py b/awx/main/tests/tasks.py index 39901659a4..1aae63d5dc 100644 --- a/awx/main/tests/tasks.py +++ b/awx/main/tests/tasks.py @@ -381,7 +381,7 @@ class RunJobTest(BaseCeleryTest): job_template = self.create_test_job_template() job = self.create_test_job(job_template=job_template) self.assertEqual(job.status, 'new') - self.assertFalse(job.get_passwords_needed_to_start()) + self.assertFalse(job.passwords_needed_to_start) self.assertTrue(job.start()) self.assertEqual(job.status, 'pending') job = Job.objects.get(pk=job.pk) @@ -410,7 +410,7 @@ class RunJobTest(BaseCeleryTest): job_template = self.create_test_job_template() job = self.create_test_job(job_template=job_template, job_type='check') self.assertEqual(job.status, 'new') - self.assertFalse(job.get_passwords_needed_to_start()) + self.assertFalse(job.passwords_needed_to_start) self.assertTrue(job.start()) self.assertEqual(job.status, 'pending') job = Job.objects.get(pk=job.pk) @@ -438,7 +438,7 @@ class RunJobTest(BaseCeleryTest): job_template = self.create_test_job_template() job = self.create_test_job(job_template=job_template) self.assertEqual(job.status, 'new') - self.assertFalse(job.get_passwords_needed_to_start()) + self.assertFalse(job.passwords_needed_to_start) self.assertTrue(job.start()) self.assertEqual(job.status, 'pending') job = Job.objects.get(pk=job.pk) @@ -466,7 +466,7 @@ class RunJobTest(BaseCeleryTest): job_template = self.create_test_job_template() job = self.create_test_job(job_template=job_template) self.assertEqual(job.status, 'new') - self.assertFalse(job.get_passwords_needed_to_start()) + self.assertFalse(job.passwords_needed_to_start) self.assertTrue(job.start()) self.assertEqual(job.status, 'pending') job = Job.objects.get(pk=job.pk) @@ -590,7 +590,7 @@ class RunJobTest(BaseCeleryTest): job_template = self.create_test_job_template() job = self.create_test_job(job_template=job_template, job_type='check') self.assertEqual(job.status, 'new') - self.assertFalse(job.get_passwords_needed_to_start()) + self.assertFalse(job.passwords_needed_to_start) self.assertTrue(job.start()) self.assertEqual(job.status, 'pending') job = Job.objects.get(pk=job.pk) @@ -630,7 +630,7 @@ class RunJobTest(BaseCeleryTest): # Calling cancel before start has no effect. self.assertFalse(job.cancel()) self.assertEqual(job.cancel_flag, False) - self.assertFalse(job.get_passwords_needed_to_start()) + self.assertFalse(job.passwords_needed_to_start) self.build_args_callback = self._cancel_job_callback self.assertTrue(job.start()) self.assertEqual(job.status, 'pending') @@ -653,7 +653,7 @@ class RunJobTest(BaseCeleryTest): extra_vars='foo=1') job = self.create_test_job(job_template=job_template) self.assertEqual(job.status, 'new') - self.assertFalse(job.get_passwords_needed_to_start()) + self.assertFalse(job.passwords_needed_to_start) self.assertTrue(job.start()) self.assertEqual(job.status, 'pending') job = Job.objects.get(pk=job.pk) @@ -669,7 +669,7 @@ class RunJobTest(BaseCeleryTest): job_template = self.create_test_job_template(limit='bad.example.com') job = self.create_test_job(job_template=job_template) self.assertEqual(job.status, 'new') - self.assertFalse(job.get_passwords_needed_to_start()) + self.assertFalse(job.passwords_needed_to_start) self.assertTrue(job.start()) self.assertEqual(job.status, 'pending') job = Job.objects.get(pk=job.pk) @@ -683,7 +683,7 @@ class RunJobTest(BaseCeleryTest): job_template = self.create_test_job_template() job = self.create_test_job(job_template=job_template) self.assertEqual(job.status, 'new') - self.assertFalse(job.get_passwords_needed_to_start()) + self.assertFalse(job.passwords_needed_to_start) self.assertTrue(job.start()) self.assertEqual(job.status, 'pending') job = Job.objects.get(pk=job.pk) @@ -697,8 +697,8 @@ class RunJobTest(BaseCeleryTest): job_template = self.create_test_job_template() job = self.create_test_job(job_template=job_template) self.assertEqual(job.status, 'new') - self.assertTrue(job.get_passwords_needed_to_start()) - self.assertTrue('ssh_password' in job.get_passwords_needed_to_start()) + self.assertTrue(job.passwords_needed_to_start) + self.assertTrue('ssh_password' in job.passwords_needed_to_start) self.assertFalse(job.start()) self.assertEqual(job.status, 'new') self.assertTrue(job.start(ssh_password='sshpass')) @@ -714,7 +714,7 @@ class RunJobTest(BaseCeleryTest): job_template = self.create_test_job_template() job = self.create_test_job(job_template=job_template) self.assertEqual(job.status, 'new') - self.assertFalse(job.get_passwords_needed_to_start()) + self.assertFalse(job.passwords_needed_to_start) self.assertTrue(job.start()) self.assertEqual(job.status, 'pending') job = Job.objects.get(pk=job.pk) @@ -730,8 +730,8 @@ class RunJobTest(BaseCeleryTest): job_template = self.create_test_job_template() job = self.create_test_job(job_template=job_template) self.assertEqual(job.status, 'new') - self.assertTrue(job.get_passwords_needed_to_start()) - self.assertTrue('sudo_password' in job.get_passwords_needed_to_start()) + self.assertTrue(job.passwords_needed_to_start) + self.assertTrue('sudo_password' in job.passwords_needed_to_start) self.assertFalse(job.start()) self.assertEqual(job.status, 'new') self.assertTrue(job.start(sudo_password='sudopass')) @@ -748,7 +748,7 @@ class RunJobTest(BaseCeleryTest): job_template = self.create_test_job_template() job = self.create_test_job(job_template=job_template) self.assertEqual(job.status, 'new') - self.assertFalse(job.get_passwords_needed_to_start()) + self.assertFalse(job.passwords_needed_to_start) self.assertTrue(job.start()) self.assertEqual(job.status, 'pending') job = Job.objects.get(pk=job.pk) @@ -762,7 +762,7 @@ class RunJobTest(BaseCeleryTest): job_template = self.create_test_job_template() job = self.create_test_job(job_template=job_template) self.assertEqual(job.status, 'new') - self.assertFalse(job.get_passwords_needed_to_start()) + self.assertFalse(job.passwords_needed_to_start) self.assertTrue(job.start()) self.assertEqual(job.status, 'pending') job = Job.objects.get(pk=job.pk) @@ -777,7 +777,7 @@ class RunJobTest(BaseCeleryTest): job_template = self.create_test_job_template() job = self.create_test_job(job_template=job_template) self.assertEqual(job.status, 'new') - self.assertFalse(job.get_passwords_needed_to_start()) + self.assertFalse(job.passwords_needed_to_start) self.assertTrue(job.start()) self.assertEqual(job.status, 'pending') job = Job.objects.get(pk=job.pk) @@ -792,8 +792,8 @@ class RunJobTest(BaseCeleryTest): job_template = self.create_test_job_template() job = self.create_test_job(job_template=job_template) self.assertEqual(job.status, 'new') - self.assertTrue(job.get_passwords_needed_to_start()) - self.assertTrue('ssh_key_unlock' in job.get_passwords_needed_to_start()) + self.assertTrue(job.passwords_needed_to_start) + self.assertTrue('ssh_key_unlock' in job.passwords_needed_to_start) self.assertFalse(job.start()) self.assertEqual(job.status, 'new') self.assertTrue(job.start(ssh_key_unlock=TEST_SSH_KEY_DATA_UNLOCK)) @@ -808,7 +808,7 @@ class RunJobTest(BaseCeleryTest): job_template = self.create_test_job_template() job = self.create_test_job(job_template=job_template) self.assertEqual(job.status, 'new') - self.assertFalse(job.get_passwords_needed_to_start()) + self.assertFalse(job.passwords_needed_to_start) self.assertTrue(job.start()) self.assertEqual(job.status, 'pending') job = Job.objects.get(pk=job.pk) @@ -836,7 +836,7 @@ class RunJobTest(BaseCeleryTest): job_template = self.create_test_job_template() job = self.create_test_job(job_template=job_template) self.assertEqual(job.status, 'new') - self.assertFalse(job.get_passwords_needed_to_start()) + self.assertFalse(job.passwords_needed_to_start) self.assertTrue(job.start()) self.assertEqual(job.status, 'pending') job = Job.objects.get(pk=job.pk) @@ -864,7 +864,7 @@ class RunJobTest(BaseCeleryTest): job_template = self.create_test_job_template() job = self.create_test_job(job_template=job_template) self.assertEqual(job.status, 'new') - self.assertFalse(job.get_passwords_needed_to_start()) + self.assertFalse(job.passwords_needed_to_start) self.assertTrue(job.start()) self.assertEqual(job.status, 'pending') job = Job.objects.get(pk=job.pk) @@ -893,7 +893,7 @@ class RunJobTest(BaseCeleryTest): job_template = self.create_test_job_template() job = self.create_test_job(job_template=job_template) self.assertEqual(job.status, 'new') - self.assertFalse(job.get_passwords_needed_to_start()) + self.assertFalse(job.passwords_needed_to_start) self.assertTrue(job.start()) self.assertEqual(job.status, 'pending') job = Job.objects.get(pk=job.pk) diff --git a/awx/main/views.py b/awx/main/views.py index 9ecaf39edd..b3b9601247 100644 --- a/awx/main/views.py +++ b/awx/main/views.py @@ -797,7 +797,7 @@ class JobStart(GenericAPIView): can_start=obj.can_start, ) if obj.can_start: - data['passwords_needed_to_start'] = obj.asswords_needed_to_start + data['passwords_needed_to_start'] = obj.passwords_needed_to_start return Response(data) def post(self, request, *args, **kwargs):