function testTwoCallsVerifiedWithTimesPassesVerificationAgainstNoMoreInteractions() { $mock = Phockito::mock(self::MOCK_CLASS); $mock->Foo(); $mock->Foo(); Phockito::verify($mock, Phockito::times(2))->Foo(); Phockito::verifyNoMoreInteractions($mock); }
function __call($called, $args) { if ($this->mode instanceof VerificationMode) { $verificationMode = $this->mode; } else { if (preg_match('/([0-9]+)\\+/', $this->mode, $match)) { $verificationMode = Phockito::atLeast((int) $match[1]); } else { $verificationMode = Phockito::times($this->mode); } } $verificationContext = new VerificationContext($this->instance, $called, $args); $verificationResult = $verificationMode->verify($verificationContext); if ($verificationResult instanceof SuccessfulVerificationResult) { $verificationContext->markMatchingInvocationsAsVerified(); return; } (new UnsuccessfulVerificationReporter())->reportUnsuccessfulVerification($verificationResult); }
/** * @param $times * @return VerificationMode */ function times($times) { return Phockito::times($times); }
/** * @expectedException \\Phockito\\Phockito\\Test\\VerificationFailure */ function testThreeCallsCorrectlyFailsVerificationAgainstExactlyTwo() { $this->setExpectedException(VerificationFailure::class); $mock = Phockito::mock(MockMe::class); $mock->Foo(); $mock->Foo(); $mock->Foo(); Phockito::verify($mock, Phockito::times(2))->Foo(); }