public async Task add_trip_async_should_invoke_repository_method() { var mockedRepository = new Mock <ITripRepository>(); var customerRepository = new Mock <ICustomerRepository>(); var mockedMapper = new Mock <ITraveloMapper>(); var mockedDateTimeProvider = new MockedDateOffsetProvider(DateTimeOffset.Now); var tripService = new TripService(mockedRepository.Object, customerRepository.Object, mockedMapper.Object, mockedDateTimeProvider); var now = DateTimeOffset.Now; await tripService.AddTripAsync(new TripDTO() { StartDate = now, EndDate = now + TimeSpan.FromDays(7), Name = "Trip name", Destination = "Berlin", Description = "Long trip" }); mockedRepository.Verify(x => x.AddTripAsync(It.IsAny <Trip>()), Times.Once()); }