/**
  * @dataProvider provide_source_blacklist
  */
 public function test_addBlacklist($source, $expected)
 {
     ReflectionHelper::setPrivateProperty('Kenjis\\MonkeyPatch\\Patcher\\FunctionPatcher', 'lock_function_list', false);
     FunctionPatcher::addBlacklist('mt_rand');
     list($actual, ) = $this->obj->patch($source);
     $this->assertEquals($expected, $actual);
     FunctionPatcher::removeBlacklist('mt_rand');
     ReflectionHelper::setPrivateProperty('Kenjis\\MonkeyPatch\\Patcher\\FunctionPatcher', 'lock_function_list', true);
 }
 protected static function addTmpFunctionBlacklist()
 {
     $list = file(Cache::getTmpFunctionBlacklistFile());
     foreach ($list as $function) {
         FunctionPatcher::addBlacklist(trim($function));
     }
 }