Skip to content

Commit 663ff51

Browse files
committed
[1.x] Fix reflection setAccessible deprecation warnings
In PHP8.1 ReflectionProperty::setAccessible was made a no-op through https://wiki.php.net/rfc/make-reflection-setaccessible-no-op in PHP8.5 it is now throwing a deprecation warning by: https://wiki.php.net/rfc/deprecations_php_8_5#deprecate_reflectionsetaccessible
1 parent 7087c43 commit 663ff51

File tree

7 files changed

+207
-53
lines changed

7 files changed

+207
-53
lines changed

tests/BrowserTest.php

Lines changed: 68 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,10 @@ public function setUpBrowser()
2222
$this->browser = new Browser(null, $this->loop);
2323

2424
$ref = new \ReflectionProperty($this->browser, 'transaction');
25-
$ref->setAccessible(true);
25+
26+
if (PHP_VERSION_ID < 80100) {
27+
$ref->setAccessible(true);
28+
}
2629
$ref->setValue($this->browser, $this->sender);
2730
}
2831

@@ -31,11 +34,17 @@ public function testConstructWithoutLoopAssignsLoopAutomatically()
3134
$browser = new Browser();
3235

3336
$ref = new \ReflectionProperty($browser, 'transaction');
34-
$ref->setAccessible(true);
37+
38+
if (PHP_VERSION_ID < 80100) {
39+
$ref->setAccessible(true);
40+
}
3541
$transaction = $ref->getValue($browser);
3642

3743
$ref = new \ReflectionProperty($transaction, 'loop');
38-
$ref->setAccessible(true);
44+
45+
if (PHP_VERSION_ID < 80100) {
46+
$ref->setAccessible(true);
47+
}
3948
$loop = $ref->getValue($transaction);
4049

4150
$this->assertInstanceOf('React\EventLoop\LoopInterface', $loop);
@@ -48,23 +57,38 @@ public function testConstructWithConnectorAssignsGivenConnector()
4857
$browser = new Browser($connector);
4958

5059
$ref = new \ReflectionProperty($browser, 'transaction');
51-
$ref->setAccessible(true);
60+
61+
if (PHP_VERSION_ID < 80100) {
62+
$ref->setAccessible(true);
63+
}
5264
$transaction = $ref->getValue($browser);
5365

5466
$ref = new \ReflectionProperty($transaction, 'sender');
55-
$ref->setAccessible(true);
67+
68+
if (PHP_VERSION_ID < 80100) {
69+
$ref->setAccessible(true);
70+
}
5671
$sender = $ref->getValue($transaction);
5772

5873
$ref = new \ReflectionProperty($sender, 'http');
59-
$ref->setAccessible(true);
74+
75+
if (PHP_VERSION_ID < 80100) {
76+
$ref->setAccessible(true);
77+
}
6078
$client = $ref->getValue($sender);
6179

6280
$ref = new \ReflectionProperty($client, 'connectionManager');
63-
$ref->setAccessible(true);
81+
82+
if (PHP_VERSION_ID < 80100) {
83+
$ref->setAccessible(true);
84+
}
6485
$connectionManager = $ref->getValue($client);
6586

6687
$ref = new \ReflectionProperty($connectionManager, 'connector');
67-
$ref->setAccessible(true);
88+
89+
if (PHP_VERSION_ID < 80100) {
90+
$ref->setAccessible(true);
91+
}
6892
$ret = $ref->getValue($connectionManager);
6993

7094
$this->assertSame($connector, $ret);
@@ -77,23 +101,38 @@ public function testConstructWithConnectorWithLegacySignatureAssignsGivenConnect
77101
$browser = new Browser(null, $connector);
78102

79103
$ref = new \ReflectionProperty($browser, 'transaction');
80-
$ref->setAccessible(true);
104+
105+
if (PHP_VERSION_ID < 80100) {
106+
$ref->setAccessible(true);
107+
}
81108
$transaction = $ref->getValue($browser);
82109

83110
$ref = new \ReflectionProperty($transaction, 'sender');
84-
$ref->setAccessible(true);
111+
112+
if (PHP_VERSION_ID < 80100) {
113+
$ref->setAccessible(true);
114+
}
85115
$sender = $ref->getValue($transaction);
86116

87117
$ref = new \ReflectionProperty($sender, 'http');
88-
$ref->setAccessible(true);
118+
119+
if (PHP_VERSION_ID < 80100) {
120+
$ref->setAccessible(true);
121+
}
89122
$client = $ref->getValue($sender);
90123

91124
$ref = new \ReflectionProperty($client, 'connectionManager');
92-
$ref->setAccessible(true);
125+
126+
if (PHP_VERSION_ID < 80100) {
127+
$ref->setAccessible(true);
128+
}
93129
$connectionManager = $ref->getValue($client);
94130

95131
$ref = new \ReflectionProperty($connectionManager, 'connector');
96-
$ref->setAccessible(true);
132+
133+
if (PHP_VERSION_ID < 80100) {
134+
$ref->setAccessible(true);
135+
}
97136
$ret = $ref->getValue($connectionManager);
98137

99138
$this->assertSame($connector, $ret);
@@ -104,11 +143,17 @@ public function testConstructWithLoopAssignsGivenLoop()
104143
$browser = new Browser(null, $this->loop);
105144

106145
$ref = new \ReflectionProperty($browser, 'transaction');
107-
$ref->setAccessible(true);
146+
147+
if (PHP_VERSION_ID < 80100) {
148+
$ref->setAccessible(true);
149+
}
108150
$transaction = $ref->getValue($browser);
109151

110152
$ref = new \ReflectionProperty($transaction, 'loop');
111-
$ref->setAccessible(true);
153+
154+
if (PHP_VERSION_ID < 80100) {
155+
$ref->setAccessible(true);
156+
}
112157
$loop = $ref->getValue($transaction);
113158

114159
$this->assertSame($this->loop, $loop);
@@ -119,11 +164,17 @@ public function testConstructWithLoopWithLegacySignatureAssignsGivenLoop()
119164
$browser = new Browser($this->loop);
120165

121166
$ref = new \ReflectionProperty($browser, 'transaction');
122-
$ref->setAccessible(true);
167+
168+
if (PHP_VERSION_ID < 80100) {
169+
$ref->setAccessible(true);
170+
}
123171
$transaction = $ref->getValue($browser);
124172

125173
$ref = new \ReflectionProperty($transaction, 'loop');
126-
$ref->setAccessible(true);
174+
175+
if (PHP_VERSION_ID < 80100) {
176+
$ref->setAccessible(true);
177+
}
127178
$loop = $ref->getValue($transaction);
128179

129180
$this->assertSame($this->loop, $loop);

tests/HttpServerTest.php

Lines changed: 64 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -53,15 +53,24 @@ public function testConstructWithoutLoopAssignsLoopAutomatically()
5353
$http = new HttpServer(function () { });
5454

5555
$ref = new \ReflectionProperty($http, 'streamingServer');
56-
$ref->setAccessible(true);
56+
57+
if (PHP_VERSION_ID < 80100) {
58+
$ref->setAccessible(true);
59+
}
5760
$streamingServer = $ref->getValue($http);
5861

5962
$ref = new \ReflectionProperty($streamingServer, 'clock');
60-
$ref->setAccessible(true);
63+
64+
if (PHP_VERSION_ID < 80100) {
65+
$ref->setAccessible(true);
66+
}
6167
$clock = $ref->getValue($streamingServer);
6268

6369
$ref = new \ReflectionProperty($clock, 'loop');
64-
$ref->setAccessible(true);
70+
71+
if (PHP_VERSION_ID < 80100) {
72+
$ref->setAccessible(true);
73+
}
6574
$loop = $ref->getValue($clock);
6675

6776
$this->assertInstanceOf('React\EventLoop\LoopInterface', $loop);
@@ -332,7 +341,10 @@ public function testServerConcurrency($memory_limit, $post_max_size, $expectedCo
332341
$http = new HttpServer(function () { });
333342

334343
$ref = new \ReflectionMethod($http, 'getConcurrentRequestsLimit');
335-
$ref->setAccessible(true);
344+
345+
if (PHP_VERSION_ID < 80100) {
346+
$ref->setAccessible(true);
347+
}
336348

337349
$value = $ref->invoke($http, $memory_limit, $post_max_size);
338350

@@ -344,7 +356,10 @@ public function testServerGetPostMaxSizeReturnsSizeFromGivenIniSetting()
344356
$http = new HttpServer(function () { });
345357

346358
$ref = new \ReflectionMethod($http, 'getMaxRequestSize');
347-
$ref->setAccessible(true);
359+
360+
if (PHP_VERSION_ID < 80100) {
361+
$ref->setAccessible(true);
362+
}
348363

349364
$value = $ref->invoke($http, '1k');
350365

@@ -356,7 +371,10 @@ public function testServerGetPostMaxSizeReturnsSizeCappedFromGivenIniSetting()
356371
$http = new HttpServer(function () { });
357372

358373
$ref = new \ReflectionMethod($http, 'getMaxRequestSize');
359-
$ref->setAccessible(true);
374+
375+
if (PHP_VERSION_ID < 80100) {
376+
$ref->setAccessible(true);
377+
}
360378

361379
$value = $ref->invoke($http, '1M');
362380

@@ -372,7 +390,10 @@ public function testServerGetPostMaxSizeFromIniIsCapped()
372390
$http = new HttpServer(function () { });
373391

374392
$ref = new \ReflectionMethod($http, 'getMaxRequestSize');
375-
$ref->setAccessible(true);
393+
394+
if (PHP_VERSION_ID < 80100) {
395+
$ref->setAccessible(true);
396+
}
376397

377398
$value = $ref->invoke($http);
378399

@@ -389,17 +410,26 @@ public function testConstructServerWithUnlimitedMemoryLimitDoesNotLimitConcurren
389410
ini_set('memory_limit', $old);
390411

391412
$ref = new \ReflectionProperty($http, 'streamingServer');
392-
$ref->setAccessible(true);
413+
414+
if (PHP_VERSION_ID < 80100) {
415+
$ref->setAccessible(true);
416+
}
393417

394418
$streamingServer = $ref->getValue($http);
395419

396420
$ref = new \ReflectionProperty($streamingServer, 'callback');
397-
$ref->setAccessible(true);
421+
422+
if (PHP_VERSION_ID < 80100) {
423+
$ref->setAccessible(true);
424+
}
398425

399426
$middlewareRunner = $ref->getValue($streamingServer);
400427

401428
$ref = new \ReflectionProperty($middlewareRunner, 'middleware');
402-
$ref->setAccessible(true);
429+
430+
if (PHP_VERSION_ID < 80100) {
431+
$ref->setAccessible(true);
432+
}
403433

404434
$middleware = $ref->getValue($middlewareRunner);
405435

@@ -419,17 +449,26 @@ public function testConstructServerWithMemoryLimitDoesLimitConcurrency()
419449
ini_set('memory_limit', $old);
420450

421451
$ref = new \ReflectionProperty($http, 'streamingServer');
422-
$ref->setAccessible(true);
452+
453+
if (PHP_VERSION_ID < 80100) {
454+
$ref->setAccessible(true);
455+
}
423456

424457
$streamingServer = $ref->getValue($http);
425458

426459
$ref = new \ReflectionProperty($streamingServer, 'callback');
427-
$ref->setAccessible(true);
460+
461+
if (PHP_VERSION_ID < 80100) {
462+
$ref->setAccessible(true);
463+
}
428464

429465
$middlewareRunner = $ref->getValue($streamingServer);
430466

431467
$ref = new \ReflectionProperty($middlewareRunner, 'middleware');
432-
$ref->setAccessible(true);
468+
469+
if (PHP_VERSION_ID < 80100) {
470+
$ref->setAccessible(true);
471+
}
433472

434473
$middleware = $ref->getValue($middlewareRunner);
435474

@@ -442,17 +481,26 @@ public function testConstructFiltersOutConfigurationMiddlewareBefore()
442481
$http = new HttpServer(new StreamingRequestMiddleware(), function () { });
443482

444483
$ref = new \ReflectionProperty($http, 'streamingServer');
445-
$ref->setAccessible(true);
484+
485+
if (PHP_VERSION_ID < 80100) {
486+
$ref->setAccessible(true);
487+
}
446488

447489
$streamingServer = $ref->getValue($http);
448490

449491
$ref = new \ReflectionProperty($streamingServer, 'callback');
450-
$ref->setAccessible(true);
492+
493+
if (PHP_VERSION_ID < 80100) {
494+
$ref->setAccessible(true);
495+
}
451496

452497
$middlewareRunner = $ref->getValue($streamingServer);
453498

454499
$ref = new \ReflectionProperty($middlewareRunner, 'middleware');
455-
$ref->setAccessible(true);
500+
501+
if (PHP_VERSION_ID < 80100) {
502+
$ref->setAccessible(true);
503+
}
456504

457505
$middleware = $ref->getValue($middlewareRunner);
458506

tests/Io/ClockTest.php

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,10 @@ public function testNowResetsMemoizedTimestampOnFutureTick()
3232
$now = $clock->now();
3333

3434
$ref = new \ReflectionProperty($clock, 'now');
35-
$ref->setAccessible(true);
35+
36+
if (PHP_VERSION_ID < 80100) {
37+
$ref->setAccessible(true);
38+
}
3639
$this->assertEquals($now, $ref->getValue($clock));
3740

3841
$this->assertNotNull($tick);

tests/Io/MultipartParserTest.php

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1048,15 +1048,25 @@ public function testWeOnlyParseTheAmountOfMultiPartChunksWeConfigured()
10481048

10491049
$reflectecClass = new \ReflectionClass('\React\Http\Io\MultipartParser');
10501050
$requestProperty = $reflectecClass->getProperty('request');
1051-
$requestProperty->setAccessible(true);
1051+
if (PHP_VERSION_ID < 80100) {
1052+
$requestProperty->setAccessible(true);
1053+
}
10521054
$cursorProperty = $reflectecClass->getProperty('cursor');
1053-
$cursorProperty->setAccessible(true);
1055+
if (PHP_VERSION_ID < 80100) {
1056+
$cursorProperty->setAccessible(true);
1057+
}
10541058
$multipartBodyPartCountProperty = $reflectecClass->getProperty('multipartBodyPartCount');
1055-
$multipartBodyPartCountProperty->setAccessible(true);
1059+
if (PHP_VERSION_ID < 80100) {
1060+
$multipartBodyPartCountProperty->setAccessible(true);
1061+
}
10561062
$maxMultipartBodyPartsProperty = $reflectecClass->getProperty('maxMultipartBodyParts');
1057-
$maxMultipartBodyPartsProperty->setAccessible(true);
1063+
if (PHP_VERSION_ID < 80100) {
1064+
$maxMultipartBodyPartsProperty->setAccessible(true);
1065+
}
10581066
$parseBodyMethod = $reflectecClass->getMethod('parseBody');
1059-
$parseBodyMethod->setAccessible(true);
1067+
if (PHP_VERSION_ID < 80100) {
1068+
$parseBodyMethod->setAccessible(true);
1069+
}
10601070

10611071
$this->assertSame(0, $cursorProperty->getValue($parser));
10621072

tests/Io/RequestHeaderParserTest.php

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -856,7 +856,10 @@ public function testServerParamsWillBeRememberedUntilConnectionIsClosed()
856856
$connection->emit('data', array("GET /foo HTTP/1.0\r\nHost: example.com\r\n\r\n"));
857857

858858
$ref = new \ReflectionProperty($parser, 'connectionParams');
859-
$ref->setAccessible(true);
859+
860+
if (PHP_VERSION_ID < 80100) {
861+
$ref->setAccessible(true);
862+
}
860863

861864
$this->assertCount(1, $ref->getValue($parser));
862865

0 commit comments

Comments
 (0)