public function invoke(Phake_IMock $mock, $method, array $arguments, array &$argumentReference) { if ($this->mockReader->isObjectFrozen($mock)) { $result = new Phake_CallRecorder_VerifierResult(false, array(), 'This object has been frozen.'); Phake::getClient()->processVerifierResult($result); } }
public function invoke(Phake_IMock $mock, $method, array $arguments, array &$argumentReference) { $stub = null; if ($method == '__call') { $stub = $this->mockReader->getStubMapper($mock)->getStubByCall($arguments[0], $argumentReference[1]); } if ($stub === null) { $stub = $this->mockReader->getStubMapper($mock)->getStubByCall($method, $argumentReference); } if ($stub === null) { $answer = $this->mockReader->getDefaultAnswer($mock); } else { $answer = $stub->getAnswer(); } return $answer; }
public function __toString() { $arguments = array(); foreach ($this->argumentMatchers as $argumentMatcher) { $arguments[] = $argumentMatcher->__toString(); } return "Expected {$this->mockReader->getName($this->getObject())}->{$this->getMethod()}(" . implode(', ', $arguments) . ") to be called {$this->getVerifierMode()->__toString()}"; }
/** * Verifies that the call to __call was made on the given object with the parameters passed into the constructor * * @param Phake_IMock $obj * @param Phake_CallRecorder_IVerifierMode $verifierMode * * @return array */ public function isCalledOn(Phake_IMock $obj, Phake_CallRecorder_IVerifierMode $verifierMode = null) { if ($verifierMode === null) { $verifierMode = new Phake_CallRecorder_VerifierMode_Times(1); } $verifier = new Phake_CallRecorder_Verifier($this->mockReader->getCallRecorder($obj), $obj); $expectation = new Phake_CallRecorder_CallExpectation($obj, '__call', $this->arguments, $verifierMode, $this->mockReader); $result = $verifier->verifyCall($expectation); return $this->client->processVerifierResult($result); }
public function invoke(Phake_IMock $mock, $method, array $arguments, array &$argumentReference) { if ($method == '__call') { $this->mockReader->getCallRecorder($mock)->recordCall(new Phake_CallRecorder_Call($mock, $arguments[0], $arguments[1], $this->mockReader)); } }
/** * Freezes the given $mock and notifies the given $client * * @param Phake_IMock $mock * @param Phake_Client_IClient $client */ public function freeze(Phake_IMock $mock, Phake_Client_IClient $client) { $client->processObjectFreeze(); $this->mockReader->setIsObjectFrozen($mock, true); }
/** * Binds an answer to the the classes * * @param Phake_Stubber_IAnswer $answer * * @return Phake_Proxies_AnswerCollectionProxy */ public function bindAnswer(Phake_Stubber_IAnswer $answer) { $collection = new Phake_Stubber_AnswerCollection($answer); $this->mockReader->getStubMapper($this->obj)->mapStubToMatcher($collection, $this->matcher); return new Phake_Proxies_AnswerCollectionProxy($collection); }
/** * Allows for verifying that no interaction occurred with a mock object * * @param Phake_IMock $mock */ public static function verifyNoInteraction(Phake_IMock $mock) { foreach (func_get_args() as $mock) { $reader = new Phake_MockReader(); $verifier = new Phake_CallRecorder_Verifier($reader->getCallRecorder($mock), $mock); self::getClient()->processVerifierResult($verifier->verifyNoCalls()); } }
public function testSetIsObjectFrozen() { $this->mock->__PHAKE_isFrozen = true; $this->reader->setIsObjectFrozen($this->mock, false); $this->assertFalse($this->mock->__PHAKE_isFrozen); }
/** * Resets the given $mock * * @param Phake_IMock $mock */ public function reset(Phake_IMock $mock) { $this->mockReader->setIsObjectFrozen($mock, false); $this->mockReader->getStubMapper($mock)->removeAllAnswers(); $this->mockReader->getCallRecorder($mock)->removeAllCalls(); }