Esempio n. 1
0
        // [TestMethod]
        public void Send_Email_With_Custom_Smtp_Factory()
        {
            var model = new TestModel()
            {
                FirstName    = "TestFirstName",
                LastName     = "TestLastName",
                CreationDate = DateTime.Now
            };

            var smtpClient = new MockSmtpClientFactory();

            GlobalConfiguration.Configuration.SmtpClientFactory = smtpClient;

            var messageId   = Guid.NewGuid().ToString();
            var emailConfig = QMailerService.CreateEmailConfig(messageId);

            emailConfig.SetView("test")
            .AddRecipient(new EmailAddress()
            {
                Address = "*****@*****.**"
            })
            .AddParameter("param1", "value1")
            .SetSender("*****@*****.**", "marc", "god", "code", true)
            .SetModel(model);

            QMailerService.SendAsync(emailConfig);

            Assert.AreNotEqual(0, smtpClient.CreateCount);
        }
Esempio n. 2
0
        public void Add_Attachment()
        {
            var model = new TestModel()
            {
                FirstName    = "TestFirstName",
                LastName     = "TestLastName",
                CreationDate = DateTime.Now
            };

            var messageId   = Guid.NewGuid().ToString();
            var emailConfig = QMailerService.CreateEmailConfig(messageId);

            emailConfig.SetView("test")
            .AddRecipient(new EmailAddress()
            {
                Address = "*****@*****.**"
            })
            .AddParameter("param1", "value1")
            .SetSender("*****@*****.**", "marc", "god", "code", true)
            .AddAttachment("filename.pdf", "application/pdf", @".\file.pdf")
            .SetModel(model);


            System.IO.File.WriteAllText(@".\base64.txt", emailConfig.Attachments[0].Content);
        }
Esempio n. 3
0
        public ActionResult Contact(string templateName)
        {
            string messageId   = Guid.NewGuid().ToString();
            var    emailConfig = QMailerService.CreateEmailConfig(messageId);

            emailConfig.SetView(templateName)
            .AddRecipient(new QMailer.EmailAddress()
            {
                Address = "*****@*****.**", SendingType = EmailSendingType.To
            });

            QMailerService.SendAsync(emailConfig);

            return(View());
        }
Esempio n. 4
0
        public static void Initialize()
        {
            var container = new Microsoft.Practices.Unity.UnityContainer();

            GlobalConfiguration.Configuration.DependencyResolver = new QMailer.UnityDependencyResolver(container);

            GlobalConfiguration.Configuration.FullUrl     = "http://localhost";
            GlobalConfiguration.Configuration.SenderEmail = "*****@*****.**";
            GlobalConfiguration.Configuration.SenderName  = "TestEmail";

            var existingBus = container.Resolve <Ariane.IServiceBus>();

            container.RegisterType <Ariane.IServiceBus, Ariane.SyncBusManager>(new ContainerControlledLifetimeManager(), new InjectionConstructor(existingBus));

            var bus = container.Resolve <Ariane.IServiceBus>();

            bus.Register.AddQueue(new QueueSetting()
            {
                AutoStartReading = true,
                Name             = GlobalConfiguration.Configuration.EmailBodyRequestedQueueName,
                TypeMedium       = typeof(Ariane.InMemoryMedium),
                TypeReader       = typeof(QMailer.Web.EmailBodyRequestedMessageReader)
            });
            bus.Register.AddQueue(new QueueSetting()
            {
                AutoStartReading = true,
                Name             = GlobalConfiguration.Configuration.SendEmailQueueName,
                TypeMedium       = typeof(Ariane.InMemoryMedium),
                TypeReader       = typeof(QMailer.SendEmailMessageReader)
            });

            QMailerService.ReplaceBusService(bus);
            QMailer.Web.QMailerConfig.Configure(container);

            var viewEngines = new Moq.Mock <ViewEngineCollection>();
            var fakeView    = new FakeView();

            viewEngines.Setup(i => i.FindView(Moq.It.IsAny <ControllerContext>(), "test", null))
            .Returns(new ViewEngineResult(fakeView, Moq.Mock.Of <IViewEngine>()));

            var fakeRenderer = new QMailer.Web.EmailViewRenderer(viewEngines.Object, "http://localhost", "~/emailviews");

            container.RegisterInstance <QMailer.Web.IEmailViewRenderer>(fakeRenderer, new ContainerControlledLifetimeManager());

            container.RegisterType <QMailer.ILogger, QMailer.DiagnosticsLogger>(new ContainerControlledLifetimeManager());
        }
        public void Send_Email_WithInterceptor()
        {
            var sender = new QMailer.SendinBlue.SendInBlueSender(Bus);

            var emailSender    = System.Configuration.ConfigurationManager.AppSettings["SIBSenderEmail"];
            var emailRecipient = System.Configuration.ConfigurationManager.AppSettings["SIBRecipientEmail"];


            QMailerService.RegisterInterceptor(typeof(MockInterceptor));

            var message = new EmailMessage();

            message.Body       = "Hello world";
            message.IsBodyHtml = false;
            message.Subject    = "Test SendInBlue";
            message.MessageId  = Guid.NewGuid().ToString();
            message.Recipients = new List <EmailAddress>();
            message.Recipients.Add(new EmailAddress()
            {
                Address     = emailRecipient,
                DisplayName = $"-- {emailRecipient} --",
                RecipientId = Guid.NewGuid().ToString(),
                SendingType = EmailSendingType.To
            });
            message.Sender = new Sender()
            {
                DisplayName = $"-- {emailSender} --",
                Email       = emailSender
            };

            sender.Send(message);

            DateTime retryMaxTime = DateTime.Now.Add(new TimeSpan(0, 1, 0));

            while (message.Body != "executed" && DateTime.Now < retryMaxTime)
            {
                Thread.Sleep(1000);
            }
            Assert.IsTrue(message.Body == "executed");
        }
Esempio n. 6
0
        public void Send_Email()
        {
            var model = new TestModel()
            {
                FirstName    = "TestFirstName",
                LastName     = "TestLastName",
                CreationDate = DateTime.Now
            };

            var messageId   = Guid.NewGuid().ToString();
            var emailConfig = QMailerService.CreateEmailConfig(messageId);

            emailConfig.SetView("test")
            .AddRecipient(new EmailAddress()
            {
                Address = "*****@*****.**"
            })
            .AddParameter("param1", "value1")
            .SetSender("*****@*****.**", "marc", "god", "code", true)
            .SetModel(model);

            QMailerService.SendAsync(emailConfig);
        }
Esempio n. 7
0
 public void Stop()
 {
     QMailerService.Stop();
     Console.WriteLine("Service Stopped");
 }
Esempio n. 8
0
 public void SendAsync(EmailConfig emailConfig)
 {
     QMailerService.SendAsync(emailConfig);
 }
Esempio n. 9
0
        public EmailConfig CreateEmailConfig(string messageId)
        {
            var emailConfig = QMailerService.CreateEmailConfig(messageId);

            return(emailConfig);
        }