public void ConfigureDefaultsAppliesToNewConfigureEndpoints() { var serverOptions = CreateServerOptions(); serverOptions.ConfigureEndpointDefaults(opt => { opt.Protocols = HttpProtocols.Http1; }); serverOptions.ConfigureHttpsDefaults(opt => { opt.ServerCertificate = TestResources.GetTestCertificate(); opt.ServerCertificateChain = TestResources.GetTestChain(); opt.ClientCertificateMode = ClientCertificateMode.RequireCertificate; }); var ran1 = false; var ran2 = false; var config = new ConfigurationBuilder().AddInMemoryCollection(new[] { new KeyValuePair <string, string>("Endpoints:End1:Url", "https://*:5001"), }).Build(); serverOptions.Configure(config) .Endpoint("End1", opt => { ran1 = true; Assert.True(opt.IsHttps); Assert.NotNull(opt.HttpsOptions.ServerCertificate); Assert.NotNull(opt.HttpsOptions.ServerCertificateChain); Assert.Equal(2, opt.HttpsOptions.ServerCertificateChain.Count); Assert.Equal(ClientCertificateMode.RequireCertificate, opt.HttpsOptions.ClientCertificateMode); Assert.Equal(HttpProtocols.Http1, opt.ListenOptions.Protocols); }) .LocalhostEndpoint(5002, opt => { ran2 = true; Assert.Equal(HttpProtocols.Http1, opt.Protocols); }) .Load(); Assert.True(ran1); Assert.True(ran2); Assert.True(serverOptions.ConfigurationBackedListenOptions[0].IsTls); Assert.False(serverOptions.CodeBackedListenOptions[0].IsTls); }
public (X509Certificate2, X509Certificate2Collection) LoadCertificate(CertificateConfig certInfo, string endpointName) { if (certInfo is null) { return(null, null); } var cert = TestResources.GetTestCertificate(); CertToPathDictionary.Add(cert, certInfo.Path); var fullChain = TestResources.GetTestChain(); CertToFullChain[cert] = fullChain; return(cert, fullChain); }