コード例 #1
0
        public void Should_send_forgotten_password_email_when_email_address_exists()
        {
            MailMessage forgottenPasswordEmail = new MailMessage();

            MockRepository mocks = new MockRepository();
            ISystemUser    user  = mocks.CreateMock <ISystemUser>();
            IForgottenPasswordMailFactory mailFactory      = mocks.CreateMock <IForgottenPasswordMailFactory>();
            ISystemUserRepository         repository       = mocks.CreateMock <ISystemUserRepository>();
            IEncryptionEngine             encryptionEngine = mocks.CreateMock <IEncryptionEngine>();
            IMailSender sender = mocks.CreateMock <IMailSender>();

            using (mocks.Record())
            {
                Expect.Call(repository.GetByEmailAddress("*****@*****.**")).Return(user);
                Expect.Call(user.Password).Return("encryptedPassword");
                Expect.Call(encryptionEngine.Decrypt("encryptedPassword")).Return("clearTextPassword");

                Expect.Call(mailFactory.CreateEmail("*****@*****.**", "clearTextPassword")).Return(forgottenPasswordEmail);

                sender.SendMail(forgottenPasswordEmail);
            }

            using (mocks.Playback())
            {
                IForgottenPasswordMailer mailer = new ForgottenPasswordMailer(encryptionEngine, mailFactory, sender);
                bool emailWasSent = mailer.SendForgottenPasswordEmail("*****@*****.**", repository);
                Assert.That(emailWasSent);
            }

            mocks.VerifyAll();
        }
コード例 #2
0
 public ForgottenPasswordMailer(IEncryptionEngine encryptionEngine, IForgottenPasswordMailFactory mailFactory, IMailSender mailSender)
 {
     _encryptionEngine = encryptionEngine;
     _mailFactory      = mailFactory;
     _mailSender       = mailSender;
 }
コード例 #3
0
		public ForgottenPasswordMailer(IEncryptionEngine encryptionEngine, IForgottenPasswordMailFactory mailFactory, IMailSender mailSender)
		{
			_encryptionEngine = encryptionEngine;
			_mailFactory = mailFactory;
			_mailSender = mailSender;
		}