Refactor user creation tests in DbRepositoryTests
Die Testmethode `CreateAsync_ShouldPersistUser` wurde entfernt und `CreateAsync_ShouldNotThrow` mit Testfällen für die Erstellung einzelner und mehrerer Benutzer hinzugefügt. Die neue Methode prüft, dass `CreateAsync` keine Ausnahmen auslöst, während Benutzerdaten mit einem Faker erzeugt werden.
This commit is contained in:
parent
266d03e0a1
commit
06df97597e
@ -6,7 +6,6 @@ using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
using System.Reflection;
|
||||
using DigitalData.Core.Tests.Mock;
|
||||
using DigitalData.Core.Abstractions.Infrastructure;
|
||||
|
||||
public class DbRepositoryTests
|
||||
@ -34,15 +33,18 @@ public class DbRepositoryTests
|
||||
disposableHost.Dispose();
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void CreateAsync_ShouldPersistUser()
|
||||
[TestCase(true, TestName = "WhenGivenMultipleUsers")]
|
||||
[TestCase(false, TestName = "WhenGivenSingleUser")]
|
||||
public void CreateAsync_ShouldNotThrow(bool multiple)
|
||||
{
|
||||
// Arrange
|
||||
var faker = Fake.CreateUserFaker();
|
||||
var user = faker.Generate();
|
||||
var repo = _host.Services.GetRequiredService<IRepository<User>>();
|
||||
|
||||
// Act & Assert
|
||||
Assert.DoesNotThrowAsync(async () => await repo.CreateAsync(user));
|
||||
if (multiple)
|
||||
Assert.DoesNotThrowAsync(async () => await repo.CreateAsync(faker.Generate(Random.Shared.Next(1, 10))));
|
||||
else
|
||||
Assert.DoesNotThrowAsync(async () => await repo.CreateAsync(faker.Generate()));
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user