mirror of
https://github.com/status-im/cabot.git
synced 2025-02-24 10:28:06 +00:00
Add unit tests for Jenkins
Add unit tests covering - when there is no build of the job at all - when there is no good build (ie, only failing builds)
This commit is contained in:
parent
cbb3be5093
commit
337e359130
@ -133,3 +133,46 @@ class TestGetStatus(unittest.TestCase):
|
||||
'status_code': 404
|
||||
}
|
||||
self.assertEqual(status, expected)
|
||||
|
||||
@patch("cabot.cabotapp.jenkins._get_jenkins_client")
|
||||
def test_job_no_build(self, mock_jenkins):
|
||||
unbuilt_job = {
|
||||
u'inQueue': False,
|
||||
u'queueItem': None,
|
||||
u'lastCompletedBuild': None,
|
||||
u'lastBuild': None,
|
||||
u'color': u'notbuilt'
|
||||
}
|
||||
self.mock_client.get_job_info.return_value = unbuilt_job
|
||||
mock_jenkins.return_value = self.mock_client
|
||||
with self.assertRaises(Exception):
|
||||
cabot_jenkins.get_job_status(self.mock_config, 'job-unbuilt')
|
||||
|
||||
@patch("cabot.cabotapp.jenkins._get_jenkins_client")
|
||||
def test_job_no_good_build(self, mock_jenkins):
|
||||
self.mock_client.get_job_info.return_value = {
|
||||
u'inQueue': False,
|
||||
u'queueItem': None,
|
||||
u'lastSuccessfulBuild': None,
|
||||
u'lastCompletedBuild': {
|
||||
u'number': 1,
|
||||
},
|
||||
u'lastBuild': {
|
||||
u'number': 1,
|
||||
},
|
||||
u'color': u'red'
|
||||
}
|
||||
self.mock_client.get_build_info.return_value = {
|
||||
u'number': 1,
|
||||
u'result': u'FAILURE'
|
||||
}
|
||||
mock_jenkins.return_value = self.mock_client
|
||||
status = cabot_jenkins.get_job_status(self.mock_config, 'job-no-good-build')
|
||||
expected = {
|
||||
'active': True,
|
||||
'succeeded': False,
|
||||
'job_number': 1,
|
||||
'blocked_build_time': None,
|
||||
'status_code': 200
|
||||
}
|
||||
self.assertEqual(status, expected)
|
||||
|
Loading…
x
Reference in New Issue
Block a user