public function testUpdate() { $mock = new MockServer(); $mock->queueResponse($this->getTestData(__FUNCTION__)); $apiObject = new Job(new Jenkins($mock), "blat"); $apiObject->color = "fuschia"; $this->assertEquals("fuschia", $apiObject->color); $apiObject->update(); $this->assertEquals("blue", $apiObject->color); }
public function testGetThrowsExceptionOnHttpResponseError() { $this->Server->queueResponse("HTTP/1.1 205 Kaboom Fool\r\n\r\nhi"); $this->Server->queueResponse("HTTP/1.1 404 Not Found\r\n\r\nhi"); $this->Server->queueResponse("HTTP/1.1 200 OK\r\n\r\nhi"); $this->Server->queueResponse("HTTP/1.1 201 Created\r\n\r\nhi"); try { $this->jenkins->get("/"); $this->fail("No JenkinsConnectionException thrown"); } catch (JenkinsConnectionException $e) { } try { $this->jenkins->get("/"); $this->fail("No JenkinsConnectionException thrown"); } catch (JenkinsConnectionException $e) { } $resp = $this->jenkins->get("/"); $resp2 = $this->jenkins->get("/"); $this->assertInstanceOf('mogman1\\Jenkins\\Server\\HttpResponse', $resp); $this->assertInstanceOf('mogman1\\Jenkins\\Server\\HttpResponse', $resp2); }
public function testQueueingMultipleResponses() { $mock = new MockServer(); $mock->queueResponse("HTTP/1.1 200 OK\r\nContent-Type: application/json\r\n\r\nresponse1"); $mock->queueResponse("HTTP/1.1 200 OK\r\nContent-Type: application/json\r\n\r\nresponse2"); $mock->queueResponse("HTTP/1.1 200 OK\r\nContent-Type: application/json\r\n\r\nresponse3"); $this->assertEquals("response1", $mock->get("/")->getBody()); $this->assertEquals("response2", $mock->get("/")->getBody()); $this->assertEquals("response3", $mock->get("/")->getBody()); }