Browse Source

#793 cont.

pull/818/head
Yunus Emre Kalkan 8 years ago
parent
commit
091e65194d
  1. 4
      modules/identity/src/Volo.Abp.Identity.Application/Volo/Abp/Identity/ProfileAppService.cs
  2. 33
      modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityOptionsFactory.cs
  3. 5
      modules/identity/test/Volo.Abp.Identity.Domain.Tests/Volo/Abp/Identity/IdentityOptions_Tests.cs
  4. 12
      modules/setting-management/test/Volo.Abp.SettingManagement.Tests/Volo/Abp/SettingManagement/SettingManager_Basic_Tests.cs
  5. 10
      modules/setting-management/test/Volo.Abp.SettingManagement.Tests/Volo/Abp/SettingManagement/SettingManager_User_Tests.cs

4
modules/identity/src/Volo.Abp.Identity.Application/Volo/Abp/Identity/ProfileAppService.cs

@ -28,12 +28,12 @@ namespace Volo.Abp.Identity
{ {
var user = await _userManager.GetByIdAsync(CurrentUser.GetId()); var user = await _userManager.GetByIdAsync(CurrentUser.GetId());
if (await SettingManager.IsTrueAsync(IdentitySettingNames.User.IsUserNameUpdateEnabled)) if (await SettingProvider.IsTrueAsync(IdentitySettingNames.User.IsUserNameUpdateEnabled))
{ {
(await _userManager.SetUserNameAsync(user, input.UserName)).CheckErrors(); (await _userManager.SetUserNameAsync(user, input.UserName)).CheckErrors();
} }
if (await SettingManager.IsTrueAsync(IdentitySettingNames.User.IsEmailUpdateEnabled)) if (await SettingProvider.IsTrueAsync(IdentitySettingNames.User.IsEmailUpdateEnabled))
{ {
(await _userManager.SetEmailAsync(user, input.Email)).CheckErrors(); (await _userManager.SetEmailAsync(user, input.Email)).CheckErrors();
} }

33
modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityOptionsFactory.cs

@ -10,15 +10,15 @@ namespace Volo.Abp.Identity
{ {
public class AbpIdentityOptionsFactory : AbpOptionsFactory<IdentityOptions> public class AbpIdentityOptionsFactory : AbpOptionsFactory<IdentityOptions>
{ {
private readonly ISettingManager _settingManager; private readonly ISettingProvider _settingProvider;
public AbpIdentityOptionsFactory( public AbpIdentityOptionsFactory(
IEnumerable<IConfigureOptions<IdentityOptions>> setups, IEnumerable<IConfigureOptions<IdentityOptions>> setups,
IEnumerable<IPostConfigureOptions<IdentityOptions>> postConfigures, IEnumerable<IPostConfigureOptions<IdentityOptions>> postConfigures,
ISettingManager settingManager) ISettingProvider settingProvider)
: base(setups, postConfigures) : base(setups, postConfigures)
{ {
_settingManager = settingManager; _settingProvider = settingProvider;
} }
public override IdentityOptions Create(string name) public override IdentityOptions Create(string name)
@ -32,19 +32,20 @@ namespace Volo.Abp.Identity
protected virtual void OverrideOptions(IdentityOptions options) protected virtual void OverrideOptions(IdentityOptions options)
{ {
options.Password.RequiredLength = _settingManager.Get(IdentitySettingNames.Password.RequiredLength, options.Password.RequiredLength);
options.Password.RequiredUniqueChars = _settingManager.Get(IdentitySettingNames.Password.RequiredUniqueChars, options.Password.RequiredUniqueChars); options.Password.RequiredLength = _settingProvider.Get(IdentitySettingNames.Password.RequiredLength, options.Password.RequiredLength);
options.Password.RequireNonAlphanumeric = _settingManager.Get(IdentitySettingNames.Password.RequireNonAlphanumeric, options.Password.RequireNonAlphanumeric); options.Password.RequiredUniqueChars = _settingProvider.Get(IdentitySettingNames.Password.RequiredUniqueChars, options.Password.RequiredUniqueChars);
options.Password.RequireLowercase = _settingManager.Get(IdentitySettingNames.Password.RequireLowercase, options.Password.RequireLowercase); options.Password.RequireNonAlphanumeric = _settingProvider.Get(IdentitySettingNames.Password.RequireNonAlphanumeric, options.Password.RequireNonAlphanumeric);
options.Password.RequireUppercase = _settingManager.Get(IdentitySettingNames.Password.RequireUppercase, options.Password.RequireUppercase); options.Password.RequireLowercase = _settingProvider.Get(IdentitySettingNames.Password.RequireLowercase, options.Password.RequireLowercase);
options.Password.RequireDigit = _settingManager.Get(IdentitySettingNames.Password.RequireDigit, options.Password.RequireDigit); options.Password.RequireUppercase = _settingProvider.Get(IdentitySettingNames.Password.RequireUppercase, options.Password.RequireUppercase);
options.Password.RequireDigit = _settingProvider.Get(IdentitySettingNames.Password.RequireDigit, options.Password.RequireDigit);
options.Lockout.AllowedForNewUsers = _settingManager.Get(IdentitySettingNames.Lockout.AllowedForNewUsers, options.Lockout.AllowedForNewUsers);
options.Lockout.DefaultLockoutTimeSpan = TimeSpan.FromSeconds(_settingManager.Get(IdentitySettingNames.Lockout.LockoutDuration, options.Lockout.DefaultLockoutTimeSpan.TotalSeconds.To<int>())); options.Lockout.AllowedForNewUsers = _settingProvider.Get(IdentitySettingNames.Lockout.AllowedForNewUsers, options.Lockout.AllowedForNewUsers);
options.Lockout.MaxFailedAccessAttempts = _settingManager.Get(IdentitySettingNames.Lockout.MaxFailedAccessAttempts, options.Lockout.MaxFailedAccessAttempts); options.Lockout.DefaultLockoutTimeSpan = TimeSpan.FromSeconds(_settingProvider.Get(IdentitySettingNames.Lockout.LockoutDuration, options.Lockout.DefaultLockoutTimeSpan.TotalSeconds.To<int>()));
options.Lockout.MaxFailedAccessAttempts = _settingProvider.Get(IdentitySettingNames.Lockout.MaxFailedAccessAttempts, options.Lockout.MaxFailedAccessAttempts);
options.SignIn.RequireConfirmedEmail = _settingManager.Get(IdentitySettingNames.SignIn.RequireConfirmedEmail, options.SignIn.RequireConfirmedEmail);
options.SignIn.RequireConfirmedPhoneNumber = _settingManager.Get(IdentitySettingNames.SignIn.RequireConfirmedPhoneNumber, options.SignIn.RequireConfirmedPhoneNumber); options.SignIn.RequireConfirmedEmail = _settingProvider.Get(IdentitySettingNames.SignIn.RequireConfirmedEmail, options.SignIn.RequireConfirmedEmail);
options.SignIn.RequireConfirmedPhoneNumber = _settingProvider.Get(IdentitySettingNames.SignIn.RequireConfirmedPhoneNumber, options.SignIn.RequireConfirmedPhoneNumber);
} }
} }
} }

5
modules/identity/test/Volo.Abp.Identity.Domain.Tests/Volo/Abp/Identity/IdentityOptions_Tests.cs

@ -14,11 +14,12 @@ namespace Volo.Abp.Identity
public class IdentityOptions_Tests : AbpIdentityDomainTestBase public class IdentityOptions_Tests : AbpIdentityDomainTestBase
{ {
private ISettingManager _settingManager; private ISettingManager _settingManager;
private ISettingProvider _settingProvider;
protected override void AfterAddApplication(IServiceCollection services) protected override void AfterAddApplication(IServiceCollection services)
{ {
_settingManager = Substitute.For<ISettingManager>(); _settingManager = Substitute.For<ISettingManager>();
_settingManager.GetOrNullAsync(Arg.Any<string>()).Returns((string) null); _settingProvider.GetOrNullAsync(Arg.Any<string>()).Returns((string) null);
services.Replace(ServiceDescriptor.Singleton(_settingManager)); services.Replace(ServiceDescriptor.Singleton(_settingManager));
} }
@ -38,7 +39,7 @@ namespace Volo.Abp.Identity
options.Password.RequiredUniqueChars.ShouldBe(1); //Default value options.Password.RequiredUniqueChars.ShouldBe(1); //Default value
} }
_settingManager.GetOrNullAsync(IdentitySettingNames.Password.RequiredLength).Returns(Task.FromResult("42")); _settingProvider.GetOrNullAsync(IdentitySettingNames.Password.RequiredLength).Returns(Task.FromResult("42"));
using (var scope2 = ServiceProvider.CreateScope()) using (var scope2 = ServiceProvider.CreateScope())
{ {

12
modules/setting-management/test/Volo.Abp.SettingManagement.Tests/Volo/Abp/SettingManagement/SettingManager_Basic_Tests.cs

@ -8,37 +8,39 @@ namespace Volo.Abp.SettingManagement
public class SettingManager_Basic_Tests : SettingsTestBase public class SettingManager_Basic_Tests : SettingsTestBase
{ {
private readonly ISettingManager _settingManager; private readonly ISettingManager _settingManager;
private readonly ISettingProvider _settingProvider;
public SettingManager_Basic_Tests() public SettingManager_Basic_Tests()
{ {
_settingManager = GetRequiredService<ISettingManager>(); _settingManager = GetRequiredService<ISettingManager>();
_settingProvider = GetRequiredService<ISettingProvider>();
} }
[Fact] [Fact]
public async Task Should_Throw_Exception_When_Try_To_Get_An_Undefined_Setting() public async Task Should_Throw_Exception_When_Try_To_Get_An_Undefined_Setting()
{ {
await Assert.ThrowsAsync<AbpException>( await Assert.ThrowsAsync<AbpException>(
async () => await _settingManager.GetOrNullAsync("UndefinedSetting") async () => await _settingProvider.GetOrNullAsync("UndefinedSetting")
); );
} }
[Fact] [Fact]
public async Task Should_Get_Default_Value_If_Not_Set_In_Store() public async Task Should_Get_Default_Value_If_Not_Set_In_Store()
{ {
var value = await _settingManager.GetOrNullAsync("SettingNotSetInStore"); var value = await _settingProvider.GetOrNullAsync("SettingNotSetInStore");
value.ShouldBe("default-value"); value.ShouldBe("default-value");
} }
[Fact] [Fact]
public async Task Should_Get_Base_Store_Value() public async Task Should_Get_Base_Store_Value()
{ {
(await _settingManager.GetOrNullAsync("MySetting1")).ShouldBe("42"); (await _settingProvider.GetOrNullAsync("MySetting1")).ShouldBe("42");
} }
[Fact] [Fact]
public async Task Should_Get_All_Base_Store_Values() public async Task Should_Get_All_Base_Store_Values()
{ {
var settingValues = await _settingManager.GetAllAsync(); var settingValues = await _settingProvider.GetAllAsync();
settingValues.ShouldContain(sv => sv.Name == "MySetting1" && sv.Value == "42"); settingValues.ShouldContain(sv => sv.Name == "MySetting1" && sv.Value == "42");
settingValues.ShouldContain(sv => sv.Name == "MySetting2" && sv.Value == "default-store-value"); settingValues.ShouldContain(sv => sv.Name == "MySetting2" && sv.Value == "default-store-value");
settingValues.ShouldContain(sv => sv.Name == "SettingNotSetInStore" && sv.Value == "default-value"); settingValues.ShouldContain(sv => sv.Name == "SettingNotSetInStore" && sv.Value == "default-value");
@ -50,7 +52,7 @@ namespace Volo.Abp.SettingManagement
await _settingManager.SetGlobalAsync("MySetting1", "43"); await _settingManager.SetGlobalAsync("MySetting1", "43");
(await _settingManager.GetOrNullGlobalAsync("MySetting1")).ShouldBe("43"); (await _settingManager.GetOrNullGlobalAsync("MySetting1")).ShouldBe("43");
(await _settingManager.GetOrNullAsync("MySetting1")).ShouldBe("43"); (await _settingProvider.GetOrNullAsync("MySetting1")).ShouldBe("43");
} }
} }
} }

10
modules/setting-management/test/Volo.Abp.SettingManagement.Tests/Volo/Abp/SettingManagement/SettingManager_User_Tests.cs

@ -15,11 +15,13 @@ namespace Volo.Abp.SettingManagement
private Guid? _currentUserId; private Guid? _currentUserId;
private readonly ISettingManager _settingManager; private readonly ISettingManager _settingManager;
private readonly ISettingProvider _settingProvider;
private readonly SettingTestData _testData; private readonly SettingTestData _testData;
public SettingManager_User_Tests() public SettingManager_User_Tests()
{ {
_settingManager = GetRequiredService<ISettingManager>(); _settingManager = GetRequiredService<ISettingManager>();
_settingProvider = GetRequiredService<ISettingProvider>();
_testData = GetRequiredService<SettingTestData>(); _testData = GetRequiredService<SettingTestData>();
} }
@ -53,17 +55,17 @@ namespace Volo.Abp.SettingManagement
public async Task Should_Get_From_Store_For_Current_User() public async Task Should_Get_From_Store_For_Current_User()
{ {
_currentUserId = _testData.User1Id; _currentUserId = _testData.User1Id;
(await _settingManager.GetOrNullAsync("MySetting2")).ShouldBe("user1-store-value"); (await _settingProvider.GetOrNullAsync("MySetting2")).ShouldBe("user1-store-value");
_currentUserId = _testData.User2Id; _currentUserId = _testData.User2Id;
(await _settingManager.GetOrNullAsync("MySetting2")).ShouldBe("user2-store-value"); (await _settingProvider.GetOrNullAsync("MySetting2")).ShouldBe("user2-store-value");
} }
[Fact] [Fact]
public async Task Should_Fallback_To_Default_Store_Value_When_No_Value_For_Current_User() public async Task Should_Fallback_To_Default_Store_Value_When_No_Value_For_Current_User()
{ {
_currentUserId = Guid.NewGuid(); _currentUserId = Guid.NewGuid();
(await _settingManager.GetOrNullAsync("MySetting2")).ShouldBe("default-store-value"); (await _settingProvider.GetOrNullAsync("MySetting2")).ShouldBe("default-store-value");
} }
[Fact] [Fact]
@ -80,7 +82,7 @@ namespace Volo.Abp.SettingManagement
public async Task Should_Fallback_To_Default_Store_Value_When_No_Value_For_Current_User_With_GetOrNullForCurrentUserAsync() public async Task Should_Fallback_To_Default_Store_Value_When_No_Value_For_Current_User_With_GetOrNullForCurrentUserAsync()
{ {
_currentUserId = Guid.NewGuid(); _currentUserId = Guid.NewGuid();
(await _settingManager.GetOrNullAsync("MySetting2")).ShouldBe("default-store-value"); (await _settingProvider.GetOrNullAsync("MySetting2")).ShouldBe("default-store-value");
} }
[Fact] [Fact]

Loading…
Cancel
Save