public async Task AcceptOrder_WhenCalled_SendsPushNotification() { // Arrange var taxiCompanyId = "someId"; var orderId = 1; var taxiCompany = new TaxiCompany(); var order = new Order(); order.TaxiCompany = taxiCompany; var ride = new Ride(); ride.StartDestination = new Address("", 1, "", 1); ride.EndDestination = new Address("", 1, "", 1); order.Rides = new List <Ride> { ride }; _unitOfWork.OrderRepository.FindByIDAsync(null).ReturnsForAnyArgs(order); _unitOfWork.TaxiCompanyRepository.FindByIDAsync(null).ReturnsForAnyArgs(taxiCompany); // Act await _orderService.AcceptOrderAsync(taxiCompanyId, orderId); // Assert await _pushNotificationService.Received().SendAsync(Arg.Any <IPushNotification>()); }