1. Go to this page and download the library: Download crashuxx/phockito library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
crashuxx / phockito example snippets
// Create the mock
$iterator = Phockito::mock('ArrayIterator');
// Use the mock object - doesn't do anything, functions return null
$iterator->append('Test');
$iterator->asort();
// Selectively verify execution
Phockito::verify($iterator)->append('Test');
// 1 is default - can also do 2, 3 for exact numbers, or 1+ for at least one, or 0 for never
Phockito::verify($iterator, 1)->asort();
// Create the mock
$iterator = Phockito::mock('ArrayIterator');
// Stub in a value
Phockito::when($iterator->offsetGet(0))->return('first');
// Prints "first"
print_r($iterator->offsetGet(0));
// Prints null, because get(999) not stubbed
print_r($iterator->offsetGet(999));
// Stub in a value
Phockito::when($iterator)->offsetGet(0)->return('first');
class A {
function Foo(){ return 'Foo'; }
function Bar(){ return $this->Foo() . 'Bar'; }
}
// Create a mock
$mock = Phockito::mock('A');
print_r($mock->Foo()); // 'null'
print_r($mock->Bar()); // 'null'
// Create a spy
$spy = Phockito::spy('A');
print_r($spy->Foo()); // 'Foo'
print_r($spy->Bar()); // 'FooBar'
// Stub a method
Phockito::when($spy)->Foo()->return('Zap');
print_r($spy->Foo()); // 'Zap'
print_r($spy->Bar()); // 'ZapBar'
class A {
function Foo($a){ }
}
$stub = Phockito::mock('A');
Phockito::when($stub)->Foo(anything())->return('Zap');
class A {
function Foo(B $b){ }
}
class B {}
$stub = Phockito::mock('A');
$b = new B();
Phockito::when($stub->Foo(argOfTypeThat('B', is(equalTo($b)))))->return('Zap');
class Foo {
function Bar($a, $b = 2){ /* NOP */ }
}
// Create the mock
$mock = Phockito::mock('Foo');
// Set up a stub
Phockito::when($mock->Bar(1))->return('A');
$mock->Bar(1); // Returns 'A'
$mock->Bar(1, 2); // Also returns 'A'
$mock->Bar(1, 3); // Returns null, since no stubbed return value matches
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.