Merge "Add a jobs_count method"
This commit is contained in:
@@ -549,6 +549,13 @@ class Jenkins(object):
|
|||||||
if self.get_job_name(name) == name:
|
if self.get_job_name(name) == name:
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
def jobs_count(self):
|
||||||
|
'''Get the number of jobs on the Jenkins server
|
||||||
|
|
||||||
|
:returns: Total number of jobs, ``int``
|
||||||
|
'''
|
||||||
|
return len(self.get_jobs())
|
||||||
|
|
||||||
def assert_job_exists(self, name,
|
def assert_job_exists(self, name,
|
||||||
exception_message='job[%s] does not exist'):
|
exception_message='job[%s] does not exist'):
|
||||||
'''Raise an exception if a job does not exist
|
'''Raise an exception if a job does not exist
|
||||||
|
@@ -650,6 +650,18 @@ class JenkinsTest(unittest.TestCase):
|
|||||||
'Error communicating with server[http://example.com/]:'
|
'Error communicating with server[http://example.com/]:'
|
||||||
' empty response')
|
' empty response')
|
||||||
|
|
||||||
|
@patch.object(jenkins.Jenkins, 'jenkins_open')
|
||||||
|
def test_jobs_count(self, jenkins_mock):
|
||||||
|
jobs = [
|
||||||
|
{u'url': u'http://localhost:8080/job/guava/', u'color': u'notbuilt', u'name': u'guava'},
|
||||||
|
{u'url': u'http://localhost:8080/job/kiwi/', u'color': u'blue', u'name': u'kiwi'},
|
||||||
|
{u'url': u'http://localhost:8080/job/lemon/', u'color': u'red', u'name': u'lemon'}
|
||||||
|
]
|
||||||
|
job_info_to_return = {u'jobs': jobs}
|
||||||
|
jenkins_mock.return_value = json.dumps(job_info_to_return)
|
||||||
|
j = jenkins.Jenkins('http://example.com/', 'test', 'test')
|
||||||
|
self.assertEqual(j.jobs_count(), 3)
|
||||||
|
|
||||||
@patch.object(jenkins.Jenkins, 'jenkins_open')
|
@patch.object(jenkins.Jenkins, 'jenkins_open')
|
||||||
def test_get_jobs(self, jenkins_mock):
|
def test_get_jobs(self, jenkins_mock):
|
||||||
jobs = {
|
jobs = {
|
||||||
|
Reference in New Issue
Block a user