refactor(Fake): Ersetzen der Roh-E-Mail-Generierung durch CreateReceiverCommand-Helfer

- Direkte Verwendung von `Internet.EMailList()` für Beispielempfänger entfernt.
- Erweiterungsmethoden `CreateReceiverCommand` und `CreateReceiverCommands` in `Faker` eingeführt.
- `AddSampleReceivers` aktualisiert, um `CreateReceiverCommands` für eine sauberere, konsistentere Testdatenerstellung zu verwenden.
This commit is contained in:
tekh 2025-08-29 13:25:36 +02:00
parent 954eff7101
commit e9202ad23e

View File

@ -76,11 +76,10 @@ public class Fake
public async Task AddSampleReceivers() public async Task AddSampleReceivers()
{ {
var mediator = Mediator; var mediator = Mediator;
foreach (var email in Provider.Internet.EMailList()) foreach (var cmd in Provider.CreateReceiverCommands())
{ {
var cmd = new CreateReceiverCommand { EmailAddress = email };
var (Id, _) = await mediator.Send(cmd); var (Id, _) = await mediator.Send(cmd);
_sampleReceivers.Add((Id, email)); _sampleReceivers.Add((Id, cmd.EmailAddress));
} }
} }
#endregion #endregion
@ -91,8 +90,13 @@ public static class Extensions
{ {
public static Fake.Host ToFake(this IHost host) => new(host); public static Fake.Host ToFake(this IHost host) => new(host);
public static IEnumerable<string> EMailList(this Internet internet, int minCount = 10, int maxCount = 20) public static CreateReceiverCommand CreateReceiverCommand(this Faker fake) => new()
=> Enumerable.Range(0, Fake.Provider.Random.Number(minCount, maxCount)) {
.Select(_ => internet.Email()) EmailAddress = fake.Internet.Email(),
};
public static List<CreateReceiverCommand> CreateReceiverCommands(this Faker fake, int minCount = 10, int maxCount = 20)
=> Enumerable.Range(0, fake.Random.Number(minCount, maxCount))
.Select(_ => fake.CreateReceiverCommand())
.ToList(); .ToList();
} }