Will overwrite namespaced functions.
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()); }
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); }
public function tearDown() { Mocker::overwriteFunction(false); }
public function testEmailDomainCheckBadMxrr() { Mocker::overwriteFunction('lithium\\util\\getmxrr', function ($host, &$mxhosts) { $mxhosts = array(); return true; }); $this->assertTrue(Validator::isEmail('*****@*****.**', null, array('deep' => true))); }
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()); }
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(); }