예제 #1
0
        public void SendOnlySpecifiedNumberOfMessages()
        {
            var sut = new EmailMessageBuffer();

            var message1 = new EmailMessage("*****@*****.**",
                                            "Hi, hope you are good today, Jason",
                                            true);


            var message2 = new EmailMessage("*****@*****.**",
                                            "Hi, hope you are good today, Jason",
                                            true);

            var message3 = new EmailMessage("*****@*****.**",
                                            "Hi, hope you are good today, Jason",
                                            true);

            sut.Add(message1);
            sut.Add(message2);
            sut.Add(message3);

            sut.SendLimited(2);

            Assert.Equal(1, sut.UnsentMessagesCount);
        }
        public void SendOnlySpecifiedNumberOfMessages()
        {
            SUT.Add(EmailMessage1);
            SUT.Add(EmailMessage2);
            SUT.Add(EmailMessage3);

            SUT.SendLimited(2);
            SUT.UnsentMessagesCount.Should().Be(1);
        }
        public void SendOnlySpecifiedNumberOfMessages()
        {
            var sut = new EmailMessageBuffer();

            sut.Add(_fixture.Create <EmailMessage>());
            sut.Add(_fixture.Create <EmailMessage>());
            sut.Add(_fixture.Create <EmailMessage>());

            sut.SendLimited(2);

            Assert.That(sut.UnsentMessagesCount, Is.EqualTo(1));
        }
        public void SendOnlySpecifiedNumberOfMessages()
        {
            var fixture = new Fixture();
            var sut     = new EmailMessageBuffer();

            sut.Add(fixture.Create <EmailMessage>());
            sut.Add(fixture.Create <EmailMessage>());
            sut.Add(fixture.Create <EmailMessage>());

            sut.SendLimited(2);

            Assert.Equal(1, sut.UnsentMessagesCount);
        }
        public void SendLimited_ShouldSendTwoMessages_ManualSetup()
        {
            //arrange
            Mock <IEmailGateway> mockGateway = new Mock <IEmailGateway>();
            EmailMessageBuffer   sut         = new EmailMessageBuffer(mockGateway.Object);

            sut.Add(_fixture.Create <EmailMessage>());
            sut.Add(_fixture.Create <EmailMessage>());
            sut.Add(_fixture.Create <EmailMessage>());

            //act
            sut.SendLimited(2);

            //assert
            sut.UnsentMessagesCount.Should().Be(1);
            mockGateway.Verify(x => x.Send(It.IsAny <EmailMessage>()), Times.Exactly(2));
        }