public function testTriggerBuildThrowsExceptionOnBadResponses() { $this->mockServer->queueResponse("HTTP/1.1 404 Not Found\r\n\r\n"); $job = new Job($this->jenkins, "jenkins-web-api"); try { $queueItem = $job->triggerBuild(); $this->fail("No JenkinsConnectionException thrown on invalid build trigger"); } catch (JenkinsConnectionException $e) { $this->assertEquals("Error triggering job build for jenkins-web-api", $e->getMessage()); } $this->mockServer->queueResponse("HTTP/1.1 201 Created\r\nLocation: http://jenkins/queue/item/9\r\n\r\n"); $this->mockServer->queueResponse("HTTP/1.1 404 Not Found\r\n\r\n"); try { $queueItem = $job->triggerBuild(); $this->fail("No JenkinsConnectionException thrown on failure to fetch QueueItem"); } catch (JenkinsConnectionException $e) { $this->assertEquals("Error fetching queue item for triggered job [jenkins-web-api] /queue/item/9", $e->getMessage()); } }