public function test_it_retrieves_base_http_url()
 {
     $returnedUri = \GuzzleHttp\Psr7\uri_for('http://foo.com');
     $this->client->getConfig('base_uri')->shouldBeCalled()->willReturn($returnedUri);
     $uri = $this->resource->testBaseUri();
     $this->assertInstanceOf(Uri::class, $uri);
     $this->assertEquals($returnedUri, $uri);
 }
Beispiel #2
0
 public function test_it_lists_images()
 {
     $this->client->getConfig('base_uri')->shouldBeCalled()->willReturn(\GuzzleHttp\Psr7\uri_for(''));
     $this->client->request('GET', 'v2/images', ['query' => ['limit' => 5], 'headers' => []])->shouldBeCalled()->willReturn($this->getFixture('GET_images'));
     foreach ($this->service->listImages(['limit' => 5]) as $image) {
         $this->assertInstanceOf(Image::class, $image);
     }
 }
 /**
  * Save the HTML of the session into a file
  * Optionally resolve all the links with a base uri
  *
  * @param  string              $filename
  * @throws InvalidArgumentException if directory doesnt exist or is not writable
  * @param  UriInterface|string $base
  */
 public function saveHtml($filename, $base = null)
 {
     $this->ensureWritableDirectory(dirname($filename));
     $html = new Html($this->getHtml());
     if (null !== $base) {
         $html->resolveLinks(\GuzzleHttp\Psr7\uri_for($base));
     }
     file_put_contents($filename, $html->get());
     return $this;
 }
Beispiel #4
0
 public function test_it_retrieves()
 {
     $this->client->getConfig('base_uri')->shouldBeCalled()->willReturn(\GuzzleHttp\Psr7\uri_for(''));
     $this->setupMock('GET', $this->path, null, [], 'GET_image');
     $this->image->retrieve();
     $this->assertEquals("active", $this->image->status);
     $this->assertEquals("foo", $this->image->name);
     $this->assertEquals([], $this->image->tags);
     $this->assertEquals("ami", $this->image->containerFormat);
     $this->assertEquals(new \DateTimeImmutable("2015-11-12T14:26:08+0000"), $this->image->createdAt);
     $this->assertEquals("ami", $this->image->diskFormat);
     $this->assertEquals(new \DateTimeImmutable("2015-12-01T12:25:42+0000"), $this->image->updatedAt);
     $this->assertEquals("public", $this->image->visibility);
     $this->assertEquals(20, $this->image->minDisk);
     $this->assertFalse($this->image->protected);
     $this->assertEquals("386f0425-3ee8-4688-b73f-272328fe4c71", $this->image->id);
     $this->assertEquals("061d01418b94d4743a98ee26d941e87c", $this->image->checksum);
     $this->assertEquals("057aad9fa85b4e29b23e7888000446ef", $this->image->ownerId);
     $this->assertEquals(983040, $this->image->size);
     $this->assertEquals(0, $this->image->minRam);
     $this->assertNull($this->image->virtualSize);
 }
 private function createRequest($uri)
 {
     $baseUri = \GuzzleHttp\Psr7\uri_for($this->client->getConfig('base_uri'));
     $uri = Uri::resolve($baseUri, $uri);
     return new Request('GET', $uri);
 }
 public function testPerformMultipleShouldRetryOnlyFailedRequests()
 {
     $requests = [];
     $responses = [];
     for ($i = 0; $i < 5; $i++) {
         $request = $this->prophesize(RequestInterface::class);
         $request->getUri()->willReturn(\GuzzleHttp\Psr7\uri_for(''));
         $requests["a_{$i}"] = $request->reveal();
         $response = $this->prophesize(ResponseInterface::class);
         $response->getStatusCode()->willReturn($i == 3 ? 400 : 200);
         $response->getReasonPhrase()->willReturn('STATUS');
         if (3 != $i) {
             $this->transport->exec($request->reveal())->willReturn(new FulfilledPromise($response->reveal()));
         } else {
             $this->transport->exec($request->reveal())->willReturn(new FulfilledPromise($response->reveal()), new FulfilledPromise($this->successResponse->reveal()));
         }
     }
     $resps = $this->manager->performMultiple($requests);
     $this->assertEquals(array_keys($requests), array_keys($resps));
 }
 /**
  * Client constructor.
  *
  * @param \livetyping\hermitage\client\contracts\signer\RequestSigner $signer
  * @param \GuzzleHttp\ClientInterface                                 $guzzle
  * @param \Psr\Http\Message\UriInterface|string                       $baseUri
  */
 public function __construct(RequestSigner $signer, GuzzleClientInterface $guzzle, $baseUri)
 {
     $this->signer = $signer;
     $this->guzzle = $guzzle;
     $this->baseUri = \GuzzleHttp\Psr7\uri_for($baseUri);
 }
 /**
  * @param string|Uri $uri
  * @return Uri
  */
 private function createUri($uri)
 {
     $baseUri = \GuzzleHttp\Psr7\uri_for($this->client->getConfig('base_uri'));
     return Uri::resolve($baseUri, $uri);
 }