using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Volo.Abp.DependencyInjection; namespace Volo.Abp.Settings { public class TestSettingValueProvider : ISettingValueProvider, ITransientDependency { public const string ProviderName = "Test"; private readonly Dictionary _values; public string Name => ProviderName; public TestSettingValueProvider() { _values = new Dictionary(); } public Task GetOrNullAsync(SettingDefinition setting) { return Task.FromResult(_values.GetOrDefault(setting.Name)); } public Task> GetAllAsync(SettingDefinition[] settings) { return Task.FromResult(settings.Select(x => new SettingValue(x.Name, _values.GetOrDefault(x.Name))).ToList()); } } }