public OrderNotificationService( IUnitOfWork unitOfWork, INotificationSenderServiceFactory <Order> notificationSenderServiceFactory) { _unitOfWork = unitOfWork; _notificationSenderServiceFactory = notificationSenderServiceFactory; _userRepository = _unitOfWork.GetRepository <IAsyncRepository <User> >(); _notificationRepository = _unitOfWork.GetRepository <IAsyncReadonlyRepository <Core.Models.Notification.Notification> >(); }
public void Setup() { _unitOfWork = A.Fake <IUnitOfWork>(); _userRepository = A.Fake <IAsyncRepository <User> >(); _notificationRepository = A.Fake <IAsyncReadonlyRepository <Notification> >(); _notificationSenderServiceFactory = A.Fake <INotificationSenderServiceFactory <Order> >(); _mailSender = A.Fake <INotificationSenderService <Order> >(); A.CallTo(() => _unitOfWork.GetRepository <IAsyncRepository <User> >()) .Returns(_userRepository); A.CallTo(() => _unitOfWork.GetRepository <IAsyncReadonlyRepository <Notification> >()) .Returns(_notificationRepository); A.CallTo(() => _notificationSenderServiceFactory.Create(NotificationMethod.Email)) .Returns(_mailSender); _orderNotificationService = new OrderNotificationService(_unitOfWork, _notificationSenderServiceFactory); }