You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

52 lines
1.4 KiB
C#

1 year ago
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using HttpClientStudy.Config;
using Microsoft.Extensions.Options;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
namespace HttpClientStudy.UnitTest.ConfigTest
{
public class WebApiConfigTest
{
[Fact]
1 year ago
public void WebApiOption_Test()
1 year ago
{
ConfigurationBuilder configurationBuilder = new ConfigurationBuilder();
configurationBuilder.AddWebApiConfigration();
IConfiguration configuration = configurationBuilder.Build();
var services = new ServiceCollection();
services.AddSingleton<IConfiguration>(configuration);
services.AddWebApiOptions();
var provider = services.BuildServiceProvider();
1 year ago
IOptions<Config.WebApiConfig> webApiOptions = provider.GetService<IOptions<Config.WebApiConfig>>();
1 year ago
var webApiConfig = webApiOptions.Value;
1 year ago
1 year ago
Assert.NotNull(webApiOptions);
Assert.NotEmpty(webApiConfig.BaseUrl);
1 year ago
}
[Fact]
public void WebApiOption_Test2()
{
IOptionsMonitor<WebApiConfig> webApiMonitor = WebApiConfigManager.GetWebApiConfigOption();
Assert.NotNull(webApiMonitor);
var webApiConfig = webApiMonitor.CurrentValue;
1 year ago
1 year ago
Assert.NotNull(webApiConfig);
1 year ago
}
}
}