1
0
mirror of https://github.com/bitwarden/server.git synced 2025-05-05 19:52:20 -05:00

[PM-15621] Address code review comments part 2

This commit is contained in:
Jimmy Vo 2025-04-17 14:14:12 -04:00
parent 9280c03beb
commit 9533d83cb2
No known key found for this signature in database
GPG Key ID: 7CB834D6F4FFCA11
2 changed files with 29 additions and 22 deletions

View File

@ -594,7 +594,7 @@ public class OrganizationUsersController : Controller
return NotFound(); return NotFound();
} }
var result = await _deleteClaimedOrganizationUserAccountCommand.DeleteUserAsync(orgId, id, currentUser.Id); var result = await _deleteClaimedOrganizationUserAccountCommand.DeleteUserAsync(orgId, id, currentUser.Value);
if (result is Success<DeleteUserResponse>) if (result is Success<DeleteUserResponse>)
{ {
@ -626,7 +626,7 @@ public class OrganizationUsersController : Controller
return MapToOrganizationUserBulkResponseModel(result); return MapToOrganizationUserBulkResponseModel(result);
} }
private static ListResponseModel<OrganizationUserBulkResponseModel> MapToOrganizationUserBulkResponseModel(Partial<Core.Models.Data.Organizations.DeleteUserResponse> result) private static ListResponseModel<OrganizationUserBulkResponseModel> MapToOrganizationUserBulkResponseModel(Partial<DeleteUserResponse> result)
{ {
var failures = result.Failures.Select(failure => new OrganizationUserBulkResponseModel(failure.ErroredValue.OrganizationUserId, failure.Message)); var failures = result.Failures.Select(failure => new OrganizationUserBulkResponseModel(failure.ErroredValue.OrganizationUserId, failure.Message));
var successes = result.Successes.Select(success => new OrganizationUserBulkResponseModel(success.OrganizationUserId, string.Empty)); var successes = result.Successes.Select(success => new OrganizationUserBulkResponseModel(success.OrganizationUserId, string.Empty));

View File

@ -17,6 +17,7 @@ using Bit.Core.Entities;
using Bit.Core.Enums; using Bit.Core.Enums;
using Bit.Core.Exceptions; using Bit.Core.Exceptions;
using Bit.Core.Models.Business; using Bit.Core.Models.Business;
using Bit.Core.Models.Commands;
using Bit.Core.Models.Data; using Bit.Core.Models.Data;
using Bit.Core.Models.Data.Organizations; using Bit.Core.Models.Data.Organizations;
using Bit.Core.Models.Data.Organizations.OrganizationUsers; using Bit.Core.Models.Data.Organizations.OrganizationUsers;
@ -360,26 +361,32 @@ public class OrganizationUsersControllerTests
sutProvider.Sut.DeleteAccount(orgId, id)); sutProvider.Sut.DeleteAccount(orgId, id));
} }
// [Theory] [Theory]
// [BitAutoData] [BitAutoData]
// public async Task BulkDeleteAccount_WhenUserCanManageUsers_Success( public async Task BulkDeleteAccount_WhenUserCanManageUsers_Success(
// Guid orgId, OrganizationUserBulkRequestModel model, User currentUser, Guid orgId, OrganizationUserBulkRequestModel model,
// List<(Guid, string)> deleteResults, SutProvider<OrganizationUsersController> sutProvider) User currentUser,
// { Partial<DeleteUserResponse> deleteResults,
// sutProvider.GetDependency<ICurrentContext>().ManageUsers(orgId).Returns(true); SutProvider<OrganizationUsersController> sutProvider)
// sutProvider.GetDependency<IUserService>().GetUserByPrincipalAsync(default).ReturnsForAnyArgs(currentUser); {
// sutProvider.GetDependency<IDeleteClaimedOrganizationUserAccountCommand>() sutProvider.GetDependency<ICurrentContext>().ManageUsers(orgId).Returns(true);
// .DeleteManyUsersAsync(orgId, model.Ids, currentUser.Id) sutProvider.GetDependency<IUserService>().GetUserByPrincipalAsync(default).ReturnsForAnyArgs(currentUser);
// .Returns(deleteResults); sutProvider.GetDependency<IDeleteClaimedOrganizationUserAccountCommand>()
// .DeleteManyUsersAsync(orgId, model.Ids, currentUser.Id)
// var response = await sutProvider.Sut.BulkDeleteAccount(orgId, model); .Returns(deleteResults);
//
// Assert.Equal(deleteResults.Count, response.Data.Count()); var response = await sutProvider.Sut.BulkDeleteAccount(orgId, model);
// Assert.True(response.Data.All(r => deleteResults.Any(res => res.Item1 == r.Id && res.Item2 == r.Error)));
// await sutProvider.GetDependency<IDeleteClaimedOrganizationUserAccountCommand>() var totalRecordCount = deleteResults.Successes.Length + deleteResults.Failures.Length;
// .Received(1)
// .DeleteManyUsersAsync(orgId, model.Ids, currentUser.Id); Assert.Equal(totalRecordCount, response.Data.Count());
// } Assert.True(deleteResults.Failures.All(result => response.Data.Any(resp => resp.Error == result.Message)));
Assert.True(deleteResults.Successes.All(result => response.Data.Any(resp => resp.Id == result.OrganizationUserId)));
await sutProvider.GetDependency<IDeleteClaimedOrganizationUserAccountCommand>()
.Received(1)
.DeleteManyUsersAsync(orgId, model.Ids, currentUser.Id);
}
[Theory] [Theory]
[BitAutoData] [BitAutoData]