@@ -75,6 +75,31 @@ class PHP_CodeCoverage_Filter
7575 */
7676 private $ blacklistPrefilled = false ;
7777
78+ /**
79+ * A list of classes which are always blacklisted
80+ *
81+ * @var array
82+ */
83+ public static $ blacklistClassNames = array (
84+ 'File_Iterator ' => 1 ,
85+ 'PHP_CodeCoverage ' => 1 ,
86+ 'PHP_Invoker ' => 1 ,
87+ 'PHP_Timer ' => 1 ,
88+ 'PHP_Token ' => 1 ,
89+ 'PHPUnit_Framework_TestCase ' => 2 ,
90+ 'PHPUnit_Extensions_Database_TestCase ' => 2 ,
91+ 'PHPUnit_Framework_MockObject_Generator ' => 2 ,
92+ 'PHPUnit_Extensions_SeleniumTestCase ' => 2 ,
93+ 'PHPUnit_Extensions_Story_TestCase ' => 2 ,
94+ 'Text_Template ' => 1 ,
95+ 'Symfony\Component\Yaml\Yaml ' => 1 ,
96+ 'SebastianBergmann\Diff\Diff ' => 1 ,
97+ 'SebastianBergmann\Environment\Runtime ' => 1 ,
98+ 'SebastianBergmann\Exporter\Exporter ' => 1 ,
99+ 'SebastianBergmann\Version ' => 1 ,
100+ 'Composer\Autoload\ClassLoader ' => 1
101+ );
102+
78103 /**
79104 * Adds a directory to the blacklist (recursively).
80105 *
@@ -300,23 +325,9 @@ private function prefillBlacklist()
300325 $ this ->addFileToBlacklist (__PHPUNIT_PHAR__ );
301326 }
302327
303- $ this ->addDirectoryContainingClassToBlacklist ('File_Iterator ' );
304- $ this ->addDirectoryContainingClassToBlacklist ('PHP_CodeCoverage ' );
305- $ this ->addDirectoryContainingClassToBlacklist ('PHP_Invoker ' );
306- $ this ->addDirectoryContainingClassToBlacklist ('PHP_Timer ' );
307- $ this ->addDirectoryContainingClassToBlacklist ('PHP_Token ' );
308- $ this ->addDirectoryContainingClassToBlacklist ('PHPUnit_Framework_TestCase ' , 2 );
309- $ this ->addDirectoryContainingClassToBlacklist ('PHPUnit_Extensions_Database_TestCase ' , 2 );
310- $ this ->addDirectoryContainingClassToBlacklist ('PHPUnit_Framework_MockObject_Generator ' , 2 );
311- $ this ->addDirectoryContainingClassToBlacklist ('PHPUnit_Extensions_SeleniumTestCase ' , 2 );
312- $ this ->addDirectoryContainingClassToBlacklist ('PHPUnit_Extensions_Story_TestCase ' , 2 );
313- $ this ->addDirectoryContainingClassToBlacklist ('Text_Template ' );
314- $ this ->addDirectoryContainingClassToBlacklist ('Symfony\Component\Yaml\Yaml ' );
315- $ this ->addDirectoryContainingClassToBlacklist ('SebastianBergmann\Diff\Diff ' );
316- $ this ->addDirectoryContainingClassToBlacklist ('SebastianBergmann\Environment\Runtime ' );
317- $ this ->addDirectoryContainingClassToBlacklist ('SebastianBergmann\Exporter\Exporter ' );
318- $ this ->addDirectoryContainingClassToBlacklist ('SebastianBergmann\Version ' );
319- $ this ->addDirectoryContainingClassToBlacklist ('Composer\Autoload\ClassLoader ' );
328+ foreach (self ::$ blacklistClassNames as $ className => $ parent ) {
329+ $ this ->addDirectoryContainingClassToBlacklist ($ className , $ parent );
330+ }
320331
321332 $ this ->blacklistPrefilled = true ;
322333 }
0 commit comments