Example #1
0
    def test_serializer_with_setup_and_tasks(self):
        self.job.worker_options['sentry'] = Client()

        self.job.tasks.append('tox')
        self.job.setup_tasks.append('apt-get install nginx')
        self.job.results['tox'] = Result('tox')
        self.job.setup_results['apt-get install nginx'] = Result('apt-get install nginx')
        serialized = Job.serializer(self.job)
        self.assertEqual(serialized['setup_results'], [{'task': 'apt-get install nginx',
                                                        'pending': True}])
        self.assertEqual(serialized['results'], [{'task': 'tox', 'pending': True}])

        result = ProcessResult('tox')
        result.out = 'Success'
        result.return_code = 0
        self.job.results['tox'].update_result(result)

        setup_result = ProcessResult('apt-get install nginx')
        setup_result.out = 'Success'
        setup_result.return_code = 0
        self.job.setup_results['apt-get install nginx'].update_result(setup_result)

        self.assertEqual(serialized['results'], [{'task': 'tox', 'pending': False, 'log': 'Success',
                                                  'return_code': 0, 'succeeded': True}])

        self.assertEqual(serialized['setup_results'], [{'task': 'apt-get install nginx',
                                                        'pending': False, 'log': 'Success',
                                                        'return_code': 0, 'succeeded': True}])
        self.assertIn('worker_host', serialized)
Example #2
0
    def test_serializer(self):
        self.job.worker_options['sentry'] = Client()
        serialized = Job.serializer(self.job)
        self.assertEqual(serialized['id'], self.job.id)
        self.assertEqual(serialized['finished'], self.job.finished)
        self.assertEqual(serialized['owner'], self.job.owner)
        self.assertEqual(serialized['name'], self.job.name)
        self.assertEqual(serialized['results'], [])
        self.assertNotIn('worker_options', serialized)
        self.assertNotIn('docker', serialized)
        self.assertNotIn('api', serialized)

        self.job.tasks.append('tox')
        self.job.results['tox'] = Result('tox')
        serialized = Job.serializer(self.job)
        self.assertEqual(serialized['setup_results'], [])
        self.assertEqual(serialized['results'], [{'task': 'tox', 'pending': True}])

        result = ProcessResult('tox')
        result.out = 'Success'
        result.return_code = 0
        self.job.results['tox'].update_result(result)
        self.assertEqual(serialized['results'], [{'task': 'tox', 'pending': False, 'log': 'Success',
                                                  'return_code': 0, 'succeeded': True}])

        self.assertEqual(serialized['setup_results'], [])
Example #3
0
 def test_update_result_failure(self):
     result = ProcessResult('tox')
     result.out = 'Oh snap'
     result.return_code = 1
     failure = Result('tox')
     failure.update_result(result)
     self.assertFalse(failure.succeeded)
     self.assertEquals(failure.log, 'Oh snap')
     self.assertEquals(failure.task, 'tox')
Example #4
0
 def test_update_result_success(self):
     result = ProcessResult('tox')
     result.out = 'Success'
     result.return_code = 0
     success = Result('tox')
     success.update_result(result)
     self.assertTrue(success.succeeded)
     self.assertEquals(success.log, 'Success')
     self.assertEquals(success.task, 'tox')