public function test_send__always__delegatesSendingToSender() { // act $this->sut->send(self::SOME_MSISDN, self::SOME_CODE); // assert $expectedSentVerification = new Verification(self::SOME_MSISDN, self::SOME_CODE); self::assertTrue($this->fakeSender->sendHaveBeenCalledWith($expectedSentVerification)); }
public function test_send__firstSenderSucceeds__DoesNotDelegateToSecondSender() { // arrange $firstSender = new FakeVerificationSender(); $secondSender = new FakeVerificationSender(); $sut = new VerificationSenderFailover([$firstSender, $secondSender]); // act $sut->send($this->someVerification); // assert self::assertFalse($secondSender->sendHaveBeenCalled()); }