<?php namespace Tests\Unit;
use GuzzleHttp\Psr7\Response;
use GuzzleHttp\Exception\RequestException;
use Tests\TestCase;
class HttpTest extends TestCase
{
public function test_http()
{
$this->fakesHttp([
new Response(200, ['X-Foo' => 'Bar'], 'Hello, World'),
new Response(202, ['Content-Length' => 0]),
new RequestException('Error Communicating with Server', new Request('GET', 'test'))
]);
$this->expectException(RequestException::class);
$response1 = $this->app()->http()->client()->get('/');
$response2 = $this->app()->http()->client()->get('/foo');
$response3 = $this->app()->http()->client()->get('/bar');
$this->assertHttpRequestSent(function ($request) {
return strval($request->getUri()) == '/' OR strval($request->getUri()) == '/foo';
});
$this->assertEquals(200, $response1->getStatusCode());
$this->assertEquals(202, $response2->getStatusCode());
}
}