Ejemplo n.º 1
0
        public HistoryMailFixture()
        {
            var loggerFactory = new LoggerFactory();

            loggerFactory.AddDebug(LogLevel.Debug);

            var sendGridSettings = new SendGridMailerSettings
            {
                ApiKey           = "abc",
                FromDisplayName  = "xunit",
                FromEmailAddress = "*****@*****.**"
            };

            var logger = loggerFactory.CreateLogger <SendGridMailer>();

            MailerFactoryForHistoryWithSerializableAttachments.Register(() => new SendGridMailerFake(
                                                                            new OptionsWrapper <SendGridMailerSettings>(sendGridSettings),
                                                                            logger,
                                                                            StoreWithSerializableAttachments));

            MailerFactoryForHistoryWithoutSerializableAttachments.Register(() => new SendGridMailerFake(
                                                                               new OptionsWrapper <SendGridMailerSettings>(sendGridSettings),
                                                                               logger,
                                                                               StoreWithoutSerializableAttachments));
        }
Ejemplo n.º 2
0
 /// <summary>
 ///     Register a SendGrid mailer with the factory
 /// </summary>
 /// <param name="factory">The factory.</param>
 /// <param name="mailerSettings">The mailer settings.</param>
 /// <param name="logger">The logger.</param>
 /// <param name="store">The history store.</param>
 public static void AddSendGridMailer(
     this MailerFactory factory,
     SendGridMailerSettings mailerSettings,
     ILogger <SendGridMailer> logger = null,
     IHistoryStore store             = null)
 {
     factory.Register(() => new SendGridMailer(
                          mailerSettings,
                          logger ?? factory.DefaultLoggerFactory?.CreateLogger <SendGridMailer>(),
                          factory.ConfigureHistoryStoreLogger(store)));
 }
Ejemplo n.º 3
0
 /// <summary>
 /// Registers a safety mailer proxy for a SendGridMailer.
 /// </summary>
 /// <param name="factory">The factory.</param>
 /// <param name="safetyMailerSettings">The safety mailer settings.</param>
 /// <param name="clientFunc">The client function.</param>
 /// <param name="mailerSettings">The mailer settings.</param>
 /// <param name="logger">The logger.</param>
 /// <param name="store">The store.</param>
 public static void AddSafetyMailer
 (
     this MailerFactory factory,
     SafetyMailerSettings safetyMailerSettings,
     Func <SendGridClient> clientFunc,
     SendGridMailerSettings mailerSettings,
     ILogger <SendGridMailer> logger = null,
     IHistoryStore store             = null
 )
 {
     factory.Register(() => new SafetyMailer <SendGridMailer>(
                          new SendGridMailer
                          (
                              clientFunc(),
                              mailerSettings,
                              logger ?? factory.DefaultLoggerFactory?.CreateLogger <SendGridMailer>(),
                              factory.ConfigureHistoryStoreLogger(store)
                          ),
                          safetyMailerSettings));
 }
        public FactoryMailFixture()
        {
            var loggerFactory = new LoggerFactory(new[] { new DebugLoggerProvider() }, new LoggerFilterOptions()
            {
                MinLevel = LogLevel.Debug
            });


            var sendGridSettings = new SendGridMailerSettings
            {
                ApiKey           = "abc",
                FromDisplayName  = "xunit",
                FromEmailAddress = "*****@*****.**"
            };

            var logger = loggerFactory.CreateLogger <SendGridMailer>();

            Mail.Register(() => new SendGridMailerFake(
                              new OptionsWrapper <SendGridMailerSettings>(sendGridSettings),
                              logger,
                              Store));
        }