Esempio n. 1
0
        public void EmailClientAction_WithSimpleJob_EmailIsProcessedByClient()
        {
            var action = new EMailClientAction(_emailClientFactory, SignatureText);

            action.ProcessJob(_job);

            Assert.IsNotEmpty(_mockMailClient.Mails);
        }
Esempio n. 2
0
        public void EmailClientAction_NoClientInstalled_ReturnsActionresultWithId101()
        {
            _emailClientFactory = MockRepository.GenerateStub <IEmailClientFactory>();
            _emailClientFactory.Stub(x => x.CreateEmailClient()).Return(null);
            var action = new EMailClientAction(_emailClientFactory, SignatureText);

            var result = action.ProcessJob(_job);

            Assert.AreEqual(11101, result[0]);
        }
        public void EmailClientAction_AttachesFiles()
        {
            var action = new EMailClientAction(_emailClientFactory);

            _profile.EmailClientSettings.Subject = "my subject";

            action.ProcessJob(_job);

            Assert.AreEqual(1, _mockMailClient.Mails[0].Attachments.Count);
        }
        public void EmailClientAction_WhenExceptionIsThrown_ReturnsActionresultWithId999()
        {
            var action = new EMailClientAction(_emailClientFactory);

            _mockMailClient.ExceptionThrown = new Exception();

            var result = action.ProcessJob(_job);

            Assert.AreEqual(ErrorCode.MailClient_GenericError, result[0]);
        }
Esempio n. 5
0
        public void EmailClientAction_WhenExceptionIsThrown_ReturnsActionresultWithId999()
        {
            var action = new EMailClientAction(_emailClientFactory, SignatureText);

            _mockMailClient.ExceptionThrown = new Exception();

            var result = action.ProcessJob(_job);

            Assert.AreEqual(11999, result[0]);
        }
Esempio n. 6
0
        public void EmailClientAction_CouldNotStartClient_ReturnsActionresultWithId100()
        {
            var action = new EMailClientAction(_emailClientFactory, SignatureText);

            _mockMailClient.WillFail = true;

            var result = action.ProcessJob(_job);

            Assert.AreEqual(11100, result[0]);
        }
        public void EmailClientAction_CouldNotStartClient_ReturnsActionresultWithId100()
        {
            var action = new EMailClientAction(_emailClientFactory);

            _mockMailClient.WillFail = true;

            var result = action.ProcessJob(_job);

            Assert.AreEqual(ErrorCode.MailClient_GenericError, result[0]);
        }
Esempio n. 8
0
        public void EmailClientAction_WithoutSignature_MailBodyDoesNotContainSignature()
        {
            var action = new EMailClientAction(_emailClientFactory, SignatureText);

            _profile.EmailClient.AddSignature = false;

            action.ProcessJob(_job);

            Assert.IsFalse(_mockMailClient.Mails[0].Body.Contains(SignatureText));
        }
Esempio n. 9
0
        public void EmailClientAction_WithSignature_MailBodyContainsSignature()
        {
            var action = new EMailClientAction(_emailClientFactory, SignatureText);

            _profile.EmailClient.AddSignature = true;

            action.ProcessJob(_job);

            Assert.IsTrue(_mockMailClient.Mails[0].Body.Contains(SignatureText));
        }
Esempio n. 10
0
        public void EmailClientAction_WithSubject_MailContainsSubject()
        {
            var action = new EMailClientAction(_emailClientFactory, SignatureText);

            _profile.EmailClient.Subject = "my subject";

            action.ProcessJob(_job);

            Assert.AreEqual(_mockMailClient.Mails[0].Subject, _profile.EmailClient.Subject);
        }
Esempio n. 11
0
        public void EmailClientAction_WithBody_MailContainsBody()
        {
            var action = new EMailClientAction(_emailClientFactory, SignatureText);

            _profile.EmailClient.Content = "some content \r\nwith line breaks";

            action.ProcessJob(_job);

            Assert.AreEqual(_mockMailClient.Mails[0].Body, _profile.EmailClient.Content);
        }
        public void EmailClientAction_NoClientInstalled_ReturnsActionresultWithId101()
        {
            _emailClientFactory = Substitute.For <IEmailClientFactory>();
            _emailClientFactory.CreateEmailClient().Returns(x => null);
            var action = new EMailClientAction(_emailClientFactory);

            var result = action.ProcessJob(_job);

            Assert.AreEqual(ErrorCode.MailClient_NoCompatibleEmailClientInstalled, result[0]);
        }
Esempio n. 13
0
        public void EmailClientAction_BodyWithToken_MailContainsReplacedBody()
        {
            var action = new EMailClientAction(_emailClientFactory, SignatureText);

            _profile.EmailClient.Content = "some content \r\nwith line breaks <foo>";
            _tokenReplacer.AddStringToken("foo", "bar");

            action.ProcessJob(_job);

            Assert.AreEqual(_mockMailClient.Mails[0].Body, "some content \r\nwith line breaks bar");
        }
Esempio n. 14
0
        public void EmailClientAction_SubjectWithToken_MailContainsReplacedSubject()
        {
            var action = new EMailClientAction(_emailClientFactory, SignatureText);

            _profile.EmailClient.Subject = "my subject <foo>";
            _tokenReplacer.AddStringToken("foo", "bar");

            action.ProcessJob(_job);

            Assert.AreEqual(_mockMailClient.Mails[0].Subject, "my subject bar");
        }
Esempio n. 15
0
        public void EmailClientAction_WithMultipleRecipientsSeperatedBySemicolons_AllRecipientsListedInMail()
        {
            var action = new EMailClientAction(_emailClientFactory);

            _profile.EmailClientSettings.Recipients = "a@local; b@local; c@local";

            action.ProcessJob(_job);

            var mail = _mockMailClient.Mails[0];

            Assert.AreEqual(new[] { "a@local", "b@local", "c@local" }, mail.Recipients.Select(r => r.Address));
        }
Esempio n. 16
0
        public void EmailClientAction_WithEmptyRecipients_OnlyContainsValidInMail()
        {
            var action = new EMailClientAction(_emailClientFactory, SignatureText);

            _profile.EmailClient.Recipients = "a@local; ; b@local";

            action.ProcessJob(_job);

            var mail = _mockMailClient.Mails[0];

            Assert.AreEqual(new[] { "a@local", "b@local" }.ToList(), mail.To);
        }
        public void EmailClientAction_WithMultipleRecipientsSeperatedByCommas_AllRecipientsListedInMail()
        {
            var action = new EMailClientAction(_emailClientFactory);

            _profile.EmailClientSettings.Recipients = "a@local, b@local, c@local";

            action.ProcessJob(_job);

            var mail = _mockMailClient.Mails[0];

            Assert.AreEqual(new[] { "a@local", "b@local", "c@local" }.ToList(), mail.To);
        }
Esempio n. 18
0
        public void EmailClientAction_WithMultipleRecipientsSeperatedBySemicolons_AllRecipientsListedInMail()
        {
            var action = new EMailClientAction(_emailClientFactory, SignatureText);

            _profile.EmailClient.Recipients = "a@local; b@local; c@local";

            action.ProcessJob(_job);

            var mail = _mockMailClient.Mails[0];

            Assert.AreEqual(new[] { "a@local", "b@local", "c@local" }.ToList(), mail.To);
        }
Esempio n. 19
0
        public void EmailClientAction_WithEmptyRecipients_OnlyContainsValidInMail()
        {
            var action = new EMailClientAction(_emailClientFactory);

            _profile.EmailClientSettings.Recipients = "a@local; ; b@local";

            action.ProcessJob(_job);

            var mail = _mockMailClient.Mails[0];

            Assert.AreEqual(new[] { "a@local", "b@local" }.ToList(), mail.Recipients.Select(r => r.Address));
        }
        public void EmailClientAction_DropboxEnabledWithoutToken_AttachesFiles()
        {
            var action = new EMailClientAction(_emailClientFactory);

            _profile.DropboxSettings.Enabled         = true;
            _profile.DropboxSettings.CreateShareLink = true;

            _profile.EmailClientSettings.Subject = "my subject";

            action.ProcessJob(_job);

            Assert.AreEqual(1, _mockMailClient.Mails[0].Attachments.Count);
        }
        public void EmailClientAction_DropboxShareLinks_DoesNotAttachFiles()
        {
            var action = new EMailClientAction(_emailClientFactory);

            _profile.DropboxSettings.Enabled         = true;
            _profile.DropboxSettings.CreateShareLink = true;

            _profile.EmailClientSettings.Subject = "my subject";
            _profile.EmailClientSettings.Content = "<DropboxFullLinks>";

            action.ProcessJob(_job);

            Assert.AreEqual(0, _mockMailClient.Mails[0].Attachments.Count);
        }
Esempio n. 22
0
        public void EmailClientAction_WithMultipleRecipientsInCcAndBcc_AllRecipientsListedInMail()
        {
            var action = new EMailClientAction(_emailClientFactory);

            _profile.EmailClientSettings.Recipients    = "a@local;";
            _profile.EmailClientSettings.RecipientsCc  = "b@local";
            _profile.EmailClientSettings.RecipientsBcc = ";c@local";

            action.ProcessJob(_job);

            var mail = _mockMailClient.Mails[0];
            var formattedRecipients = mail.Recipients.Select(r => r.Type + ":" + r.Address);

            Assert.AreEqual(new[] { "To:a@local", "Cc:b@local", "Bcc:c@local" }, formattedRecipients);
        }