Fix way more bugs.
authorSalim Fadhley <sal@stodge.org>
Sat, 2 Aug 2014 15:57:38 +0000 (16:57 +0100)
committerSalim Fadhley <sal@stodge.org>
Sat, 2 Aug 2014 15:57:38 +0000 (16:57 +0100)
jenkinsapi/job.py
jenkinsapi_tests/systests/test_executors.py
jenkinsapi_tests/systests/test_jenkins_matrix.py

index c298e70ae608e54b56fd728198e2e9ebe3a69fbc..87242169d9e8e1efb51cb4dc633fd187a63aa0cb 100644 (file)
@@ -166,12 +166,8 @@ class Job(JenkinsBase, MutableJenkinsThing):
                                                                file_params)
         return json.dumps(to_json_structure)
 
-    def invoke(self, securitytoken=None, block=False, skip_if_running=False, invoke_pre_check_delay=3,
-               invoke_block_delay=15, build_params=None, cause=None, files=None):
-        assert isinstance(invoke_pre_check_delay, (int, float))
-        assert isinstance(invoke_block_delay, (int, float))
+    def invoke(self, securitytoken=None, block=False, build_params=None, cause=None, files=None):
         assert isinstance(block, bool)
-        assert isinstance(skip_if_running, bool)
 
         # Either copy the params dict or make a new one.
         build_params = build_params and dict(
@@ -204,6 +200,9 @@ class Job(JenkinsBase, MutableJenkinsThing):
 
         queue_url = response.headers['location']
         qi = QueueItem(queue_url, self.jenkins)
+        
+        if block:
+            qi.block_until_complete(delay=10)
         return qi
 
     def _buildid_for_type(self, buildtype):
index 4631070050cc1584164d00321609c77b830c651a..f66a94588f8967ea08018dd1d2cbf321ec05d323 100644 (file)
@@ -33,8 +33,8 @@ class TestNodes(BaseSystemTest):
         self.jenkins.create_node(node_name)
         job_name = 'create_%s' % random_string()
         job = self.jenkins.create_job(job_name, LONG_RUNNING_JOB)
-        ii = job.invoke(invoke_pre_check_delay=2)
-        ii.block(until='not_queued')
+        qq = job.invoke(invoke_pre_check_delay=2)
+        qq.block_until_building()
 
         if job.is_running() is False:
             time.sleep(1)
@@ -44,7 +44,7 @@ class TestNodes(BaseSystemTest):
             if execs.is_idle() is False:
                 all_idle = False
                 self.assertNotEqual(execs.get_progress(), -1)
-                self.assertEqual(execs.get_current_executable(), ii.get_build_number())
+                self.assertEqual(execs.get_current_executable(), qq.get_build_number())
                 self.assertEqual(execs.likely_stuck(), False)
         self.assertEqual(all_idle, True, "Executor should have been triggered.")
 
index 54849cce82fac17c741a6bcfbdef92f0132671e0..ce1c4e53e72fe6d6f4079611e075369eac53d70f 100644 (file)
@@ -19,7 +19,8 @@ class TestMatrixJob(BaseSystemTest):
     def test_invoke_matrix_job(self):
         job_name = 'create_%s' % random_string()
         job = self.jenkins.create_job(job_name, MATRIX_JOB)
-        job.invoke(block=True)
+        queueItem = job.invoke()
+        queueItem.block_until_complete()
 
         build = job.get_last_build()