public async Task DeleteAsync_GivenActor_IsDeleted() { // Arrange await using var host = await SubDomainIntegrationTestHost.InitializeAsync().ConfigureAwait(false); var scope = host.BeginScope(); var container = scope.GetInstance <IActorRepositoryContainer>(); var target = new ActorRepository(container); var actorId = Guid.NewGuid(); var externalId = Guid.NewGuid(); var actor = new Actor(new ActorId(actorId), new ExternalActorId(externalId)); await target.AddOrUpdateAsync(actor).ConfigureAwait(false); // Act await target.DeleteAsync(actor).ConfigureAwait(false); // Assert var actual = await target .GetActorAsync(new ExternalActorId(externalId)) .ConfigureAwait(false); Assert.Null(actual); }
public async Task DeleteAsync_given_non_existing_actorId_returns_false() { using (var connection = await CreateConnectionAsync()) using (var context = await CreateContextAsync(connection)) { var repository = new ActorRepository(context); var deleted = await repository.DeleteAsync(42); Assert.False(deleted); } }
public async Task DeleteAsync_NoActor_DoesNothing() { // Arrange await using var host = await SubDomainIntegrationTestHost.InitializeAsync().ConfigureAwait(false); var scope = host.BeginScope(); var container = scope.GetInstance <IActorRepositoryContainer>(); var target = new ActorRepository(container); var actorId = Guid.NewGuid(); var externalId = Guid.NewGuid(); var actor = new Actor(new ActorId(actorId), new ExternalActorId(externalId)); // Act + Assert await target.DeleteAsync(actor).ConfigureAwait(false); }
public async Task DeleteAsync_given_existing_actorId_deletes_and_returns_true() { using (var connection = await CreateConnectionAsync()) using (var context = await CreateContextAsync(connection)) { var entity = new Actor { Name = "Lauren Tom" }; context.Actors.Add(entity); await context.SaveChangesAsync(); var id = entity.Id; var repository = new ActorRepository(context); var deleted = await repository.DeleteAsync(id); Assert.True(deleted); } }