From 5304d57217adc70841a222dacdad5cc03213e63b Mon Sep 17 00:00:00 2001 From: Ike Kottlowski Date: Fri, 23 Jan 2026 14:36:11 -0500 Subject: [PATCH] feat: commands use DeleteManyById for emergencyAccessDeletes --- .../Commands/DeleteEmergencyAccessCommand.cs | 4 ++-- .../DeleteEmergencyAccessCommandTests.cs | 16 ++++++++-------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/Core/Auth/UserFeatures/EmergencyAccess/Commands/DeleteEmergencyAccessCommand.cs b/src/Core/Auth/UserFeatures/EmergencyAccess/Commands/DeleteEmergencyAccessCommand.cs index 94dc1cb75f..a9996f5055 100644 --- a/src/Core/Auth/UserFeatures/EmergencyAccess/Commands/DeleteEmergencyAccessCommand.cs +++ b/src/Core/Auth/UserFeatures/EmergencyAccess/Commands/DeleteEmergencyAccessCommand.cs @@ -71,10 +71,10 @@ public class DeleteEmergencyAccessCommand( var grantorEmails = new HashSet(); var granteeEmails = new HashSet(); + await _emergencyAccessRepository.DeleteManyAsync([.. emergencyAccessDetails.Select(ea => ea.Id)]); + foreach (var details in emergencyAccessDetails) { - var emergencyAccess = details.ToEmergencyAccess(); - await _emergencyAccessRepository.DeleteAsync(emergencyAccess); granteeEmails.Add(details.GranteeEmail ?? string.Empty); grantorEmails.Add(details.GrantorEmail); } diff --git a/test/Core.Test/Auth/UserFeatures/EmergencyAccess/DeleteEmergencyAccessCommandTests.cs b/test/Core.Test/Auth/UserFeatures/EmergencyAccess/DeleteEmergencyAccessCommandTests.cs index 88d6a2b404..5048234dc7 100644 --- a/test/Core.Test/Auth/UserFeatures/EmergencyAccess/DeleteEmergencyAccessCommandTests.cs +++ b/test/Core.Test/Auth/UserFeatures/EmergencyAccess/DeleteEmergencyAccessCommandTests.cs @@ -60,7 +60,7 @@ public class DeleteEmergencyAccessCommandTests Assert.Equal(emergencyAccessDetails.GrantorId, result.GrantorId); await sutProvider.GetDependency() .Received(1) - .DeleteAsync(Arg.Is(ea => ea.Id == emergencyAccessDetails.Id)); + .DeleteManyAsync(Arg.Any>()); await sutProvider.GetDependency() .Received(1) .SendEmail(Arg.Any()); @@ -124,8 +124,8 @@ public class DeleteEmergencyAccessCommandTests Assert.NotNull(result); Assert.Equal(3, result.Count); await sutProvider.GetDependency() - .Received(3) - .DeleteAsync(Arg.Any()); + .Received(1) + .DeleteManyAsync(Arg.Any>()); await sutProvider.GetDependency() .Received(1) .SendEmail(Arg.Any()); @@ -152,7 +152,7 @@ public class DeleteEmergencyAccessCommandTests Assert.Equal(emergencyAccessDetails.Id, result.First().Id); await sutProvider.GetDependency() .Received(1) - .DeleteAsync(Arg.Is(ea => ea.Id == emergencyAccessDetails.Id)); + .DeleteManyAsync(Arg.Any>()); await sutProvider.GetDependency() .Received(1) .SendEmail(Arg.Any()); @@ -177,7 +177,7 @@ public class DeleteEmergencyAccessCommandTests Assert.Empty(result); await sutProvider.GetDependency() .DidNotReceiveWithAnyArgs() - .DeleteAsync(default); + .DeleteManyAsync(default); await sutProvider.GetDependency() .DidNotReceiveWithAnyArgs() .SendEmail(default); @@ -204,7 +204,7 @@ public class DeleteEmergencyAccessCommandTests Assert.Equal(emergencyAccessDetails.Id, result.First().Id); await sutProvider.GetDependency() .Received(1) - .DeleteAsync(Arg.Is(ea => ea.Id == emergencyAccessDetails.Id)); + .DeleteManyAsync(Arg.Any>()); await sutProvider.GetDependency() .Received(1) .SendEmail(Arg.Any()); @@ -244,8 +244,8 @@ public class DeleteEmergencyAccessCommandTests Assert.NotNull(result); Assert.Equal(3, result.Count); await sutProvider.GetDependency() - .Received(3) - .DeleteAsync(Arg.Any()); + .Received(1) + .DeleteManyAsync(Arg.Any>()); await sutProvider.GetDependency() .Received(1) .SendEmail(Arg.Any());