Repository navigation
Expand file tree
/
Copy pathMakesHttpRequests.php
More file actions
68 lines (55 loc) · 1.87 KB
/
Copy pathMakesHttpRequests.php
File metadata and controls
68 lines (55 loc) · 1.87 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
<?php
declare(strict_types=1);
/**
* This file is part of Hyperf.
*
* @link https://www.hyperf.io
* @document https://hyperf.wiki
* @contact [email protected]
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
*/
namespace Hyperf\Testing\Concerns;
use Hyperf\Testing\Http\Client;
use Hyperf\Testing\Http\TestResponse;
use function Hyperf\Support\make;
trait MakesHttpRequests
{
protected function get($uri, array $data = [], array $headers = []): TestResponse
{
return $this->doRequest(__FUNCTION__, $uri, $data, $headers);
}
protected function post($uri, array $data = [], array $headers = []): TestResponse
{
return $this->doRequest(__FUNCTION__, $uri, $data, $headers);
}
protected function put($uri, array $data = [], array $headers = []): TestResponse
{
return $this->doRequest(__FUNCTION__, $uri, $data, $headers);
}
protected function patch($uri, array $data = [], array $headers = []): TestResponse
{
return $this->doRequest(__FUNCTION__, $uri, $data, $headers);
}
protected function delete($uri, array $data = [], array $headers = []): TestResponse
{
return $this->doRequest(__FUNCTION__, $uri, $data, $headers);
}
protected function json($uri, array $data = [], array $headers = []): TestResponse
{
return $this->doRequest(__FUNCTION__, $uri, $data, $headers);
}
protected function file($uri, array $data = [], array $headers = []): TestResponse
{
return $this->doRequest(__FUNCTION__, $uri, $data, $headers);
}
protected function doRequest(string $method, ...$args): TestResponse
{
return $this->createTestResponse(
make(Client::class)->{$method}(...$args)
);
}
protected function createTestResponse($response): TestResponse
{
return new TestResponse($response);
}
}