public async Task DeleteEntity_Test() { // arrange var logger = Substitute.For <ILogger <IRepository <StubEntityString> > >(); var mediator = Substitute.For <IMediator>(); var sut = new InMemoryRepository <StubEntityString>(logger, mediator, new InMemoryContext <StubEntityString>(this.entities)); // act var entity = this.entities.FirstOrDefault(e => e.FirstName == this.entities.First().FirstName); await sut.DeleteAsync(entity).AnyContext(); entity = await sut.FindOneAsync(entity.Id).AnyContext(); // assert Assert.Null(entity); await mediator.Received().Publish(Arg.Any <IDomainEvent>()); }
public async Task DeleteEntityById_Test() { // arrange var mediator = Substitute.For <IMediator>(); var sut = new InMemoryRepository <StubEntityString>(o => o .Mediator(mediator) .Context(new InMemoryContext <StubEntityString>(this.entities))); // act var id = this.entities.First().Id; await sut.DeleteAsync(id).AnyContext(); var entity = await sut.FindOneAsync(id).AnyContext(); // assert Assert.Null(entity); await mediator.Received().Publish(Arg.Any <IDomainEvent>()).AnyContext(); }