mirror of https://github.com/abpframework/abp.git
7 changed files with 3 additions and 157 deletions
@ -1,31 +0,0 @@ |
|||
using System; |
|||
using System.Threading.Tasks; |
|||
using JetBrains.Annotations; |
|||
|
|||
namespace Volo.Abp.Settings |
|||
{ |
|||
public static class SettingManagerExtensions |
|||
{ |
|||
public static async Task<bool> IsTrueAsync([NotNull] this ISettingManager settingManager, [NotNull] string name) |
|||
{ |
|||
Check.NotNull(settingManager, nameof(settingManager)); |
|||
Check.NotNull(name, nameof(name)); |
|||
|
|||
return string.Equals( |
|||
await settingManager.GetOrNullAsync(name), |
|||
"true", |
|||
StringComparison.OrdinalIgnoreCase |
|||
); |
|||
} |
|||
|
|||
public static async Task<T> GetAsync<T>([NotNull] this ISettingManager settingManager, [NotNull] string name, T defaultValue = default) |
|||
where T : struct |
|||
{ |
|||
Check.NotNull(settingManager, nameof(settingManager)); |
|||
Check.NotNull(name, nameof(name)); |
|||
|
|||
var value = await settingManager.GetOrNullAsync(name); |
|||
return value?.To<T>() ?? defaultValue; |
|||
} |
|||
} |
|||
} |
|||
@ -1,34 +0,0 @@ |
|||
using System.Collections.Generic; |
|||
using JetBrains.Annotations; |
|||
using Volo.Abp.Threading; |
|||
|
|||
namespace Volo.Abp.Settings |
|||
{ |
|||
public static class SettingManagerSyncExtensions |
|||
{ |
|||
public static string GetOrNull([NotNull] this ISettingManager settingManager, [NotNull] string name) |
|||
{ |
|||
Check.NotNull(settingManager, nameof(settingManager)); |
|||
|
|||
return AsyncHelper.RunSync(() => settingManager.GetOrNullAsync(name)); |
|||
} |
|||
|
|||
public static List<SettingValue> GetAll([NotNull] this ISettingManager settingManager) |
|||
{ |
|||
Check.NotNull(settingManager, nameof(settingManager)); |
|||
|
|||
return AsyncHelper.RunSync(settingManager.GetAllAsync); |
|||
} |
|||
|
|||
public static T Get<T>([NotNull] this ISettingManager settingManager, [NotNull] string name, T defaultValue = default) |
|||
where T : struct |
|||
{ |
|||
return AsyncHelper.RunSync(() => settingManager.GetAsync(name, defaultValue)); |
|||
} |
|||
|
|||
public static bool IsTrue([NotNull] this ISettingManager settingManager, [NotNull] string name) |
|||
{ |
|||
return AsyncHelper.RunSync(() => settingManager.IsTrueAsync(name)); |
|||
} |
|||
} |
|||
} |
|||
@ -1,53 +0,0 @@ |
|||
using System.Threading.Tasks; |
|||
using Shouldly; |
|||
using Xunit; |
|||
|
|||
namespace Volo.Abp.Settings |
|||
{ |
|||
public class SettingManager_Tests : AbpIntegratedTest<AbpSettingsTestModule> |
|||
{ |
|||
private readonly ISettingManager _settingManager; |
|||
|
|||
public SettingManager_Tests() |
|||
{ |
|||
_settingManager = GetRequiredService<ISettingManager>(); |
|||
} |
|||
|
|||
[Fact] |
|||
public async Task Should_Get_Null_If_No_Value_Provided_And_No_Default_Value() |
|||
{ |
|||
(await _settingManager.GetOrNullAsync(TestSettingNames.TestSettingWithoutDefaultValue)) |
|||
.ShouldBeNull(); |
|||
} |
|||
|
|||
[Fact] |
|||
public async Task Should_Get_Default_Value_If_No_Value_Provided_And_There_Is_A_Default_Value() |
|||
{ |
|||
(await _settingManager.GetOrNullAsync(TestSettingNames.TestSettingWithDefaultValue)) |
|||
.ShouldBe("default-value"); |
|||
} |
|||
|
|||
[Theory] |
|||
[InlineData(null)] |
|||
[InlineData("")] |
|||
[InlineData("abc")] |
|||
[InlineData("This is a relatively long text... This is a relatively long text... This is a relatively long text... ")] |
|||
public async Task Should_Set_And_Get_Encrypted_Values(string plainValue) |
|||
{ |
|||
(await _settingManager.GetOrNullAsync(TestSettingNames.TestSettingEncrypted)) |
|||
.ShouldBeNull(); |
|||
|
|||
await _settingManager.SetAsync( |
|||
TestSettingNames.TestSettingEncrypted, |
|||
plainValue, |
|||
TestSettingValueProvider.ProviderName, |
|||
null |
|||
); |
|||
|
|||
(await _settingManager.GetOrNullAsync(TestSettingNames.TestSettingEncrypted)) |
|||
.ShouldBe(plainValue); |
|||
} |
|||
|
|||
//TODO: Needs more tests with more advanced scenarios.
|
|||
} |
|||
} |
|||
Loading…
Reference in new issue