protected EmailJob(MorphicSettings morphicSettings, EmailSettings settings, ILogger <EmailJob> logger, Database db) : base(morphicSettings) { Db = db; EmailSettings = settings; this.logger = logger; Attributes = new Dictionary <string, string>(); }
public Recaptcha(MorphicSettings settings, ILogger <Recaptcha> logger) { if (settings.Recaptcha3Settings.Key == "" || settings.Recaptcha3Settings.Secret == "") { throw new RecaptchaException("Missing key or secret"); } this.settings = settings.Recaptcha3Settings; this.logger = logger; }
public UserCleanupJob( Database db, ILogger <UserCleanupJob> logger, MorphicSettings settings) { this.db = db; this.logger = logger; this.settings = settings; }
public void TestHttpRequestGetServerUri() { // Bad: No headers and nothing in settings var settings = new MorphicSettings() { ServerUrlPrefix = "" }; var request = new MockHttpRequest(); request.Headers.Add("foo1", "something1"); request.Headers.Add("foo2", "something2"); var uri = request.GetServerUri(); Assert.Null(uri); // GOOD: headers, but no setting: server URL comes from headers request = new MockHttpRequest(); request.Headers.Add("x-forwarded-host", "myhost.example.com"); request.Headers.Add("x-forwarded-proto", "https"); request.Headers.Add("x-forwarded-port", "12345"); uri = request.GetServerUri(); Assert.Equal("https://myhost.example.com:12345/", uri.ToString()); // No port from headers request = new MockHttpRequest(); request.Headers.Add("x-forwarded-host", "myhost.example.com"); request.Headers.Add("x-forwarded-proto", "https"); uri = request.GetServerUri(); Assert.Equal("https://myhost.example.com/", uri.ToString()); // Standard ports from headers request = new MockHttpRequest(); request.Headers.Add("x-forwarded-host", "myhost.example.com"); request.Headers.Add("x-forwarded-proto", "https"); request.Headers.Add("x-forwarded-port", "443"); uri = request.GetServerUri(); Assert.Equal("https://myhost.example.com/", uri.ToString()); request = new MockHttpRequest(); request.Headers.Add("x-forwarded-host", "myhost.example.com"); request.Headers.Add("x-forwarded-proto", "http"); request.Headers.Add("x-forwarded-port", "80"); uri = request.GetServerUri(); Assert.Equal("http://myhost.example.com/", uri.ToString()); }
/// <summary>Create a test database, test http server, and client connection to the test server</summary> public EndpointRequestTests() { Environment.SetEnvironmentVariable("MORPHIC_ENC_KEY_PRIMARY", "TESTKEY:5E4FA583FDFFEEE0C89E91307A6AD56EDF2DADACDE5163C1485F3FBCC166B995"); Environment.SetEnvironmentVariable("MORPHIC_HASH_SALT_PRIMARY", "SALT1:361e665ef378ab06031806469b7879bd"); var config = new ConfigurationBuilder(); var settingsFile = Environment.GetEnvironmentVariable("APPSETTINGS_FILENAME") ?? "appsettings.Test.json"; config.AddJsonFile(settingsFile); var builder = new WebHostBuilder(); builder.UseConfiguration(config.Build()); builder.UseStartup <MockStartup>(); builder.UseSerilog(); Server = new TestServer(builder); Client = Server.CreateClient(); Database = Server.Services.GetService(typeof(Database)) as Database; MorphicSettings = Server.Services.GetService(typeof(MorphicSettings)) as MorphicSettings; Debug.Assert(MorphicSettings != null, nameof(MorphicSettings) + " != null"); JobClient = Server.Services.GetService((typeof(IBackgroundJobClient))) as MockBackgroundJobClient; Debug.Assert(JobClient != null, nameof(JobClient) + " != null"); }
public EmailVerificationEmail(MorphicSettings morphicSettings, EmailSettings settings, ILogger <EmailVerificationEmail> logger, Database db) : base(morphicSettings, settings, logger, db) { EmailType = EmailConstants.EmailTypes.WelcomeEmailValidation; }
public UnknownEmailPasswordResetEmail(MorphicSettings morphicSettings, EmailSettings settings, ILogger <EmailVerificationEmail> logger, Database db) : base(morphicSettings, settings, logger, db) { EmailType = EmailConstants.EmailTypes.PasswordResetUnknownEmail; }
public InvitationEmail(MorphicSettings morphicSettings, EmailSettings settings, ILogger <EmailJob> logger, Database db) : base(morphicSettings, settings, logger, db) { EmailType = EmailConstants.EmailTypes.CommunityInvitation; }
public EmailNotVerifiedPasswordResetEmail(MorphicSettings morphicSettings, EmailSettings settings, ILogger <EmailVerificationEmail> logger, Database db) : base(morphicSettings, settings, logger, db) { EmailType = EmailConstants.EmailTypes.PasswordResetEmailNotValidated; }
public ChangePasswordEmail(MorphicSettings morphicSettings, EmailSettings settings, ILogger <EmailJob> logger, Database db) : base(morphicSettings, settings, logger, db) { EmailType = EmailConstants.EmailTypes.ChangePasswordEmail; }
public BackgroundJob(MorphicSettings settings) { this.settings = settings; }
public SignupConfirmationEmail(MorphicSettings morphicSettings, EmailSettings settings, ILogger <SignupConfirmationEmail> logger, Database db) : base(morphicSettings, settings, logger, db) { this.EmailType = EmailConstants.EmailTypes.SignupConfirmation; }