function testSpyingCall() { $spy = Phockito::spy(OverloadedCall::class); $this->assertEquals($spy->Foo(), 'Foo'); Phockito::when($spy)->Foo()->return(1); $this->assertEquals($spy->Foo(), 1); Phockito::verify($spy, 2)->Foo(); }
/** * Given a class name as a string, return a new instance which acts as a spy of that class * * @param string $class - The class to spy * @return Object - A spy of that class */ function spy($class) { return Phockito::spy($class); }
function testCanSpyAndOverrideUndefinedToString() { $mock = Phockito::spy(MockWithoutToString::class); Phockito::when($mock)->__toString()->return('NewReturnValue'); $this->assertEquals('NewReturnValue', '' . $mock); }
function testConstructorSupressedWhenDesired() { $spy = Phockito::spy(SpyMe::class, Phockito::DONT_CALL_CONSTRUCTOR); $this->assertFalse($spy->constructor_arg); }