66
77use GuzzleHttp \Psr7 \Request ;
88use GuzzleHttp \Psr7 \Utils ;
9+ use PHPUnit \Framework \Attributes \CoversClass ;
10+ use PHPUnit \Framework \Attributes \DataProvider ;
911use PHPUnit \Framework \TestCase ;
1012use Psr \Http \Client \ClientInterface ;
1113use Psr \Http \Message \RequestFactoryInterface ;
1416use Psr \Http \Message \StreamInterface ;
1517use Redmine \Client \Psr18Client ;
1618
19+ #[CoversClass(Psr18Client::class)]
1720class Psr18ClientRequestGenerationTest extends TestCase
1821{
1922 /**
20- * @covers \Redmine\Client\Psr18Client
21- * @test
22- *
2323 * @dataProvider createdGetRequestsData
2424 */
25+ #[DataProvider('createdGetRequestsData ' )]
2526 public function testPsr18ClientCreatesCorrectRequests (
2627 string $ url ,
2728 string $ apikeyOrUsername ,
@@ -34,42 +35,39 @@ public function testPsr18ClientCreatesCorrectRequests(
3435 ) {
3536 $ response = $ this ->createMock (ResponseInterface::class);
3637
38+ /** @var ClientInterface|\PHPUnit\Framework\MockObject\MockObject */
3739 $ httpClient = $ this ->createMock (ClientInterface::class);
38- $ httpClient ->method ('sendRequest ' )->will (
39- $ this ->returnCallback (function ($ request ) use ($ response , $ expectedOutput ) {
40- // Create a text representation of the HTTP request
41- $ content = $ request ->getBody ()->__toString ();
40+ $ httpClient ->method ('sendRequest ' )->willReturnCallback (function ($ request ) use ($ response , $ expectedOutput ) {
41+ // Create a text representation of the HTTP request
42+ $ content = $ request ->getBody ()->__toString ();
4243
43- $ headers = '' ;
44+ $ headers = '' ;
4445
45- foreach ($ request ->getHeaders () as $ k => $ v ) {
46- $ headers .= $ k . ': ' . $ request ->getHeaderLine ($ k ) . \PHP_EOL ;
47- }
46+ foreach ($ request ->getHeaders () as $ k => $ v ) {
47+ $ headers .= $ k . ': ' . $ request ->getHeaderLine ($ k ) . \PHP_EOL ;
48+ }
4849
49- $ statusLine = sprintf (
50- '%s %s HTTP/%s ' ,
51- $ request ->getMethod (),
52- $ request ->getUri ()->__toString (),
53- $ request ->getProtocolVersion ()
54- );
50+ $ statusLine = sprintf (
51+ '%s %s HTTP/%s ' ,
52+ $ request ->getMethod (),
53+ $ request ->getUri ()->__toString (),
54+ $ request ->getProtocolVersion ()
55+ );
5556
56- $ fullRequest = $ statusLine . \PHP_EOL .
57- $ headers . \PHP_EOL .
58- $ content
59- ;
57+ $ fullRequest = $ statusLine . \PHP_EOL .
58+ $ headers . \PHP_EOL .
59+ $ content
60+ ;
6061
61- $ this ->assertSame ($ expectedOutput , $ fullRequest );
62+ $ this ->assertSame ($ expectedOutput , $ fullRequest );
6263
63- return $ response ;
64- })
65- );
64+ return $ response ;
65+ });
6666
6767 $ requestFactory = $ this ->createMock (RequestFactoryInterface::class);
68- $ requestFactory ->method ('createRequest ' )->will (
69- $ this ->returnCallback (function ($ method , $ uri ) {
70- return new Request ($ method , $ uri );
71- })
72- );
68+ $ requestFactory ->method ('createRequest ' )->willReturnCallback (function ($ method , $ uri ) {
69+ return new Request ($ method , $ uri );
70+ });
7371
7472 $ streamFactory = new class () implements StreamFactoryInterface {
7573 public function createStream (string $ content = '' ): StreamInterface
0 commit comments