overwriteFunction() публичный статический Метод

Will overwrite namespaced functions.
public static overwriteFunction ( string | boolean $name, closure | boolean $callback = null ) : void
$name string | boolean Fully namespaced function, or `false` to reset functions.
$callback closure | boolean Callback to be called, or `false` to reset this function.
Результат void
Пример #1
0
 public function testFunctionSuccessful()
 {
     Mocker::overwriteFunction('app\\extensions\\file_get_contents', function () {
         return 'foo';
     });
     \app\extensions\file_get_contents();
     $chain = Mocker::chain('app\\extensions\\file_get_contents');
     $this->assertTrue($chain->called('app\\extensions\\file_get_contents')->with()->success());
 }
Пример #2
0
 public function testCallStaticCallsCorrectFunction()
 {
     NewrelicMock::applyFilter('shouldRun', function ($self, $params, $chain) {
         return true;
     });
     Mocker::overwriteFunction('li3_newrelic\\extensions\\call_user_func_array', function ($function_name) {
         return $function_name;
     });
     $result = NewrelicMock::custom_metric();
     $this->assertIdentical('newrelic_custom_metric', $result);
 }
Пример #3
0
 public function tearDown()
 {
     Mocker::overwriteFunction(false);
 }
Пример #4
0
 public function testEmailDomainCheckBadMxrr()
 {
     Mocker::overwriteFunction('lithium\\util\\getmxrr', function ($host, &$mxhosts) {
         $mxhosts = array();
         return true;
     });
     $this->assertTrue(Validator::isEmail('*****@*****.**', null, array('deep' => true)));
 }
Пример #5
0
 public function testResetAllFunctions()
 {
     $obj = new \lithium\tests\mocks\test\MockStdClass();
     Mocker::overwriteFunction('lithium\\tests\\mocks\\test\\get_class', function ($obj) {
         return 'baz';
     });
     Mocker::overwriteFunction('lithium\\tests\\mocks\\test\\is_executable', function ($foo) {
         return 'qux';
     });
     Mocker::overwriteFunction(false);
     $this->assertIdentical('lithium\\tests\\mocks\\test\\MockStdClass', $obj->getClass());
     $this->assertInternalType('bool', $obj->isExecutable());
 }
Пример #6
0
 public function testInstallDocsWithGit()
 {
     $base = 'lithium\\console\\command\\';
     Mocker::overwriteFunction("{$base}shell_exec", function ($cmd) {
         if ($cmd === 'git --version') {
             return 'git version 1.7.9.5';
         }
         return true;
     });
     Mocker::overwriteFunction("{$base}is_dir", function ($dir) {
         return true;
     });
     $this->library->path = $this->_testPath;
     $result = $this->library->install('li3_docs');
     $this->assertTrue($result);
     $this->_cleanUp();
 }