Skip to content

Commit 52ba97d

Browse files
committed
TimeoutExceptionTest: let the test fail
1 parent 7097b88 commit 52ba97d

1 file changed

Lines changed: 33 additions & 0 deletions

File tree

tests/TimeoutExceptionTest.php

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
namespace React\Tests\Promise\Timer;
44

5+
use ErrorException;
56
use React\Promise\Timer\TimeoutException;
67

78
class TimeoutExceptionTest extends TestCase
@@ -12,4 +13,36 @@ public function testAccessTimeout()
1213

1314
$this->assertEquals(10, $e->getTimeout());
1415
}
16+
17+
public function testEnsureNoDeprecationsAreTriggered()
18+
{
19+
$formerReporting = error_reporting();
20+
error_reporting(E_ALL | E_STRICT);
21+
$this->setStrictErrorHandling();
22+
23+
try {
24+
$e = new TimeoutException(10);
25+
} catch (ErrorException $e) {
26+
error_reporting($formerReporting);
27+
throw $e;
28+
}
29+
30+
error_reporting($formerReporting);
31+
$this->assertEquals(10, $e->getTimeout());
32+
}
33+
34+
protected function setStrictErrorHandling()
35+
{
36+
set_error_handler(function ($errno, $errstr, $errfile, $errline) {
37+
if (! (error_reporting() & $errno)) {
38+
return false;
39+
}
40+
switch ($errno) {
41+
case E_DEPRECATED:
42+
throw new ErrorException($errstr, 0, $errno, $errfile, $errline);
43+
}
44+
45+
return false;
46+
});
47+
}
1548
}

0 commit comments

Comments
 (0)