public async Task DeleteById_Test() { // arrange var fakeUowProvider = A.Fake <IUnitOfWorkProvider>(); var fakeUow = A.Fake <IUnitOfWork>(); A.CallTo(() => fakeUowProvider.Get()).Returns(fakeUow); var fakeRepoProvider = A.Fake <IWishlistRepositoryProvider>(); var fakeRepo = A.Fake <IWishlistRepository>(); A.CallTo(() => fakeRepoProvider.Get(fakeUow)).Returns(fakeRepo); WishlistService service = new WishlistService(fakeUowProvider, fakeRepoProvider); // act await service.DeleteById(1); // assert A.CallTo(() => fakeRepo.DeleteById(1)).MustHaveHappened(); A.CallTo(() => fakeUow.Dispose()).MustHaveHappened(); }