Beispiel #1
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'], [])
Beispiel #2
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)
Beispiel #3
0
 def test_serializer_preview_settings(self):
     self.job.settings  # load the settings object
     serialized = Job.serializer(self.job)
     self.assertEqual(serialized['settings']['preview']['image'], 'frigg/frigg-test-base')
     self.assertEqual(serialized['settings']['preview']['tasks'], ['gunicorn'])