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)
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'], [])
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')
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')