コード例 #1
0
 def test_nonempty_result_should_return_data(self):
     test_job = fixtures.job()
     test_job.result = "test"
     test_job.report_url = "http://fake_url"
     expected = "http://fake_url"
     result = test_job.log_url
     self.assertEqual(result, expected)
コード例 #2
0
 def test_start_with_job_wo_start_should_return_none(self):
     test_buildset = fixtures.buildset()
     test_job = fixtures.job()
     test_job.time_tracker.start = None
     test_buildset.jobs = [test_job]
     result = test_buildset.start_datetime
     self.assertIsNone(result)
コード例 #3
0
 def test_remaining_with_job_wo_remaining_should_return_none(self):
     test_buildset = fixtures.buildset()
     test_job = fixtures.job()
     test_job.time_tracker.remaining = None
     test_buildset.jobs = [test_job]
     result = test_buildset.remaining_time
     self.assertIsNone(result)
コード例 #4
0
 def test_valid_progress_should_return_data(self):
     test_job = fixtures.job()
     test_job.time_tracker.remaining = 1000
     test_job.time_tracker.estimated = 10
     expected = 90
     result = test_job.progress
     self.assertEqual(result, expected)
コード例 #5
0
 def test_progress_with_multiple_jobs_should_return_expected(self):
     test_buildset = fixtures.buildset()
     test_jobs = [fixtures.job() for x in range(3)]
     test_buildset.jobs = test_jobs
     expected = 100 / len(test_jobs)
     result = test_buildset.progress
     self.assertEqual(result, expected)
コード例 #6
0
 def test_progress_with_one_job_should_return_100(self):
     test_buildset = fixtures.buildset()
     test_job = fixtures.job()
     test_buildset.jobs = [test_job]
     expected = 100
     result = test_buildset.progress
     self.assertEqual(result, expected)
コード例 #7
0
 def test_remaining_with_multiple_jobs_should_return_longest_time(self):
     test_buildset = fixtures.buildset()
     test_jobs = [fixtures.job() for x in range(3)]
     max_time = max(job.time_tracker.remaining for job in test_jobs)
     test_buildset.jobs = test_jobs
     result = test_buildset.remaining_time
     expected = seconds_to_time(milliseconds_to_seconds(max_time))
     self.assertEqual(result, expected)
コード例 #8
0
 def test_empty_result_wo_slashes_should_return_url(self):
     test_job = fixtures.job()
     test_job.result = None
     test_job.url = "fake_endpoint"
     expected = "http://fake_url/fake_endpoint"
     with mock.patch.dict(config['zuul'], {'url': 'http://fake_url'}):
         result = test_job.log_url
     self.assertEqual(result, expected)
コード例 #9
0
 def test_start_with_multiple_jobs_should_return_earliest_time(self):
     test_buildset = fixtures.buildset()
     test_jobs = [fixtures.job() for x in range(3)]
     min_time = min(job.time_tracker.start for job in test_jobs)
     test_buildset.jobs = test_jobs
     result = test_buildset.start_datetime
     expected = epoch_to_datetime(min_time)
     self.assertEqual(result, expected)
コード例 #10
0
 def test_empty_result_wo_slashes_should_return_url(self):
     test_job = fixtures.job()
     test_job.result = None
     test_job.url = "fake_endpoint"
     expected = "http://fake_url/fake_endpoint"
     config['ZUUL']['url'] = "http://fake_url"
     result = test_job.log_url
     self.assertEqual(result, expected)
コード例 #11
0
 def test_status_with_failing_voting_job_should_have_fail_status(self):
     test_buildset = fixtures.buildset()
     test_job = fixtures.job()
     test_job.result = 'FAILURE'
     test_job.voting = True
     test_buildset.jobs = [test_job]
     expected = 'Failing'
     result = test_buildset.status
     self.assertEqual(result, expected)
コード例 #12
0
 def test_status_wo_failing_and_voting_jobs_should_have_success_status(
         self):
     test_buildset = fixtures.buildset()
     test_jobs = [fixtures.job() for x in range(3)]
     for j in test_jobs:
         j.result = "SUCCESS"
     test_buildset.jobs = test_jobs
     expected = "Succeeding"
     result = test_buildset.status
     self.assertEqual(result, expected)
コード例 #13
0
    def test_status_with_failing_notvoting_job_should_have_success_status(self):
        test_buildset = fixtures.buildset()
        test_jobs = [fixtures.job() for _ in Job.FAILING_RESULTS]
        for job, job_result in zip(test_jobs, Job.FAILING_RESULTS):
            job.result = job_result
            job.voting = False
        test_buildset.jobs = test_jobs

        result = test_buildset.status
        expected = "Succeeding"
        self.assertEqual(result, expected)
コード例 #14
0
    def test_status_with_any_failing_voting_job_should_have_fail_status(self):
        test_buildset = fixtures.buildset()
        test_job = fixtures.job()
        test_job.voting = True
        test_buildset.jobs = [test_job]
        expected = "Failing"

        for fresult in Job.FAILING_RESULTS:
            test_job.result = fresult
            result = test_buildset.status
            self.assertEqual(result, expected)
コード例 #15
0
    def test_status_wo_failing_and_voting_jobs_should_have_success_status(self):
        example_succeeding_job_results = ["SUCCESS", "SKIPPED"]

        test_buildset = fixtures.buildset()
        test_jobs = [fixtures.job() for _ in example_succeeding_job_results]
        for job, job_result in zip(test_jobs,
                                   example_succeeding_job_results):
            job.result = job_result
        test_buildset.jobs = test_jobs

        result = test_buildset.status
        expected = "Succeeding"
        self.assertEqual(result, expected)
コード例 #16
0
    def test_status_with_mixed_voting_jobs_should_have_fail_status(self):
        job_results = ["SUCCESS", "ERROR", "SKIPPED"]

        test_buildset = fixtures.buildset()
        test_jobs = [fixtures.job() for _ in job_results]

        for job, job_result in zip(test_jobs, job_results):
            job.result = job_result
            job.voting = True
        test_buildset.jobs = test_jobs

        result = test_buildset.status
        expected = "Failing"
        self.assertEqual(result, expected)
コード例 #17
0
 def test_no_estimated_should_return_0(self):
     test_job = fixtures.job()
     test_job.time_tracker.estimated = 0
     expected = 0
     result = test_job.progress
     self.assertEqual(result, expected)
コード例 #18
0
 def test_no_remaining_should_return_100(self):
     test_job = fixtures.job()
     test_job.time_tracker.remaining = 0
     expected = 100
     result = test_job.progress
     self.assertEqual(result, expected)