Chris@0
|
1 --TEST--
|
Chris@0
|
2 Test DeprecationErrorHandler in default mode
|
Chris@0
|
3 --FILE--
|
Chris@0
|
4 <?php
|
Chris@0
|
5
|
Chris@0
|
6 putenv('SYMFONY_DEPRECATIONS_HELPER');
|
Chris@0
|
7 putenv('ANSICON');
|
Chris@0
|
8 putenv('ConEmuANSI');
|
Chris@0
|
9 putenv('TERM');
|
Chris@0
|
10
|
Chris@0
|
11 $vendor = __DIR__;
|
Chris@0
|
12 while (!file_exists($vendor.'/vendor')) {
|
Chris@0
|
13 $vendor = dirname($vendor);
|
Chris@0
|
14 }
|
Chris@0
|
15 define('PHPUNIT_COMPOSER_INSTALL', $vendor.'/vendor/autoload.php');
|
Chris@0
|
16 require PHPUNIT_COMPOSER_INSTALL;
|
Chris@0
|
17 require_once __DIR__.'/../../bootstrap.php';
|
Chris@0
|
18
|
Chris@0
|
19 @trigger_error('root deprecation', E_USER_DEPRECATED);
|
Chris@0
|
20
|
Chris@0
|
21 eval(<<<'EOPHP'
|
Chris@0
|
22 namespace PHPUnit\Util;
|
Chris@0
|
23
|
Chris@0
|
24 class Test
|
Chris@0
|
25 {
|
Chris@0
|
26 public static function getGroups()
|
Chris@0
|
27 {
|
Chris@18
|
28 return array();
|
Chris@0
|
29 }
|
Chris@0
|
30 }
|
Chris@0
|
31 EOPHP
|
Chris@0
|
32 );
|
Chris@0
|
33
|
Chris@0
|
34 class PHPUnit_Util_Test
|
Chris@0
|
35 {
|
Chris@0
|
36 public static function getGroups()
|
Chris@0
|
37 {
|
Chris@0
|
38 return array();
|
Chris@0
|
39 }
|
Chris@0
|
40 }
|
Chris@0
|
41
|
Chris@0
|
42 class FooTestCase
|
Chris@0
|
43 {
|
Chris@0
|
44 public function testLegacyFoo()
|
Chris@0
|
45 {
|
Chris@0
|
46 @trigger_error('silenced foo deprecation', E_USER_DEPRECATED);
|
Chris@0
|
47 trigger_error('unsilenced foo deprecation', E_USER_DEPRECATED);
|
Chris@0
|
48 trigger_error('unsilenced foo deprecation', E_USER_DEPRECATED);
|
Chris@0
|
49 }
|
Chris@0
|
50
|
Chris@0
|
51 public function testNonLegacyBar()
|
Chris@0
|
52 {
|
Chris@0
|
53 @trigger_error('silenced bar deprecation', E_USER_DEPRECATED);
|
Chris@0
|
54 trigger_error('unsilenced bar deprecation', E_USER_DEPRECATED);
|
Chris@0
|
55 }
|
Chris@0
|
56 }
|
Chris@0
|
57
|
Chris@0
|
58 $foo = new FooTestCase();
|
Chris@0
|
59 $foo->testLegacyFoo();
|
Chris@0
|
60 $foo->testNonLegacyBar();
|
Chris@0
|
61
|
Chris@14
|
62 register_shutdown_function(function () {
|
Chris@14
|
63 exit('I get precedence over any exit statements inside the deprecation error handler.');
|
Chris@14
|
64 });
|
Chris@14
|
65
|
Chris@0
|
66 ?>
|
Chris@0
|
67 --EXPECTF--
|
Chris@0
|
68 Unsilenced deprecation notices (3)
|
Chris@0
|
69
|
Chris@14
|
70 2x: unsilenced foo deprecation
|
Chris@0
|
71 2x in FooTestCase::testLegacyFoo
|
Chris@0
|
72
|
Chris@14
|
73 1x: unsilenced bar deprecation
|
Chris@0
|
74 1x in FooTestCase::testNonLegacyBar
|
Chris@0
|
75
|
Chris@0
|
76 Remaining deprecation notices (1)
|
Chris@0
|
77
|
Chris@14
|
78 1x: silenced bar deprecation
|
Chris@0
|
79 1x in FooTestCase::testNonLegacyBar
|
Chris@0
|
80
|
Chris@0
|
81 Legacy deprecation notices (1)
|
Chris@0
|
82
|
Chris@0
|
83 Other deprecation notices (1)
|
Chris@0
|
84
|
Chris@14
|
85 1x: root deprecation
|
Chris@0
|
86
|
Chris@14
|
87 I get precedence over any exit statements inside the deprecation error handler.
|