Skip to content

Commit bb60b47

Browse files
authored
Merge pull request #9 from dgentilezza/master
Use of "body" is contemplated in method GET
2 parents 49b74c5 + 0ae3838 commit bb60b47

File tree

3 files changed

+69
-3
lines changed

3 files changed

+69
-3
lines changed

src/Client.php

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,9 @@ public function __construct()
4646
$this->handle = curl_init();
4747

4848
if (!is_resource($this->handle)) {
49+
// @codeCoverageIgnoreStart
4950
throw new ClientException(curl_error($this->handle), 'curl');
51+
// @codeCoverageIgnoreEnd
5052
}
5153

5254
$this->setOptions([
@@ -172,18 +174,19 @@ public function sendRequest(RequestInterface $request)
172174
* Create a GET request for the client.
173175
*
174176
* @param string $uri Resource URI.-
177+
* @param string $body Body to send in the request.-
175178
* @param array $headers HTTP headers.-
176179
* @param array $options Options to apply to the request.-
177180
*
178181
* @throws ClientException
179182
*
180183
* @return Response
181184
*/
182-
public function get($uri, array $headers = [], array $options = [])
185+
public function get($uri, $body = '', array $headers = [], array $options = [])
183186
{
184187
$this->setOptions($options);
185188

186-
return $this->sendRequest(new Request(HttpMethod::GET, $uri, $headers));
189+
return $this->sendRequest(new Request(HttpMethod::GET, $uri, $headers, $body));
187190
}
188191

189192
/**

src/ClientInterface.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,13 @@ public function setOptions(array $options);
1515
* Create a GET request for the client.
1616
*
1717
* @param string $uri Resource URI.-
18+
* @param string $body Body to send in the request.-
1819
* @param array $headers HTTP headers.-
1920
* @param array $options Options to apply to the request.-
2021
*
2122
* @return Response
2223
*/
23-
public function get($uri, array $headers = [], array $options = []);
24+
public function get($uri, $body = '', array $headers = [], array $options = []);
2425

2526
/**
2627
* Create a POST request for the client.

tests/EnumTest.php

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
<?php
2+
/*
3+
Copyright (c) 2017 Jorge Matricali <jorgematricali@gmail.com>
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in
13+
all copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21+
THE SOFTWARE.
22+
*/
23+
24+
namespace Matricali\Http\Tests;
25+
26+
use Matricali\Http\HttpMethod;
27+
use PHPUnit\Framework\TestCase;
28+
29+
/**
30+
* @group Client
31+
*/
32+
class EnumTest extends TestCase
33+
{
34+
public function testGetByNameNoName()
35+
{
36+
$res = HttpMethod::getByName('noName');
37+
$this->assertEmpty($res);
38+
}
39+
40+
public function testGetByNameName()
41+
{
42+
$res = HttpMethod::getByName('GET');
43+
$this->assertEquals($res, 'GET');
44+
}
45+
46+
public function testIsValidName()
47+
{
48+
// True
49+
$res = HttpMethod::isValidName('GET');
50+
$this->assertTrue($res);
51+
// False
52+
$res = HttpMethod::isValidName('GOT');
53+
$this->assertFalse($res);
54+
// True
55+
$res = HttpMethod::isValidName('GET',true);
56+
$this->assertTrue($res);
57+
// False
58+
$res = HttpMethod::isValidName('get',true);
59+
$this->assertFalse($res);
60+
}
61+
62+
}

0 commit comments

Comments
 (0)