public CommonReferralService( //IReferralLeadService referralLeadService, IReferralHotelsService referralHotelsService, IFriendReferralService friendReferralService, IMapper mapper) { //_referralLeadService = referralLeadService; _referralHotelsService = referralHotelsService; _friendReferralService = friendReferralService; _mapper = mapper; }
public ReferralHotelsController( IReferralHotelsService referralHotelsService, IDemoHotelService demoHotelService, ICustomerProfileClient customerProfileClient, ISettingsService settingsService, IMapper mapper, ILogFactory logFactory) : base(settingsService, logFactory) { _referralHotelsService = referralHotelsService; _mapper = mapper; _demoHotelService = demoHotelService; _customerProfileClient = customerProfileClient; }
public ReferralHotelsServiceTests() { _customerProfileClientMock.Setup(o => o.CustomerProfiles .GetByCustomerIdAsync(It.Is <string>(customerId => customerId == _customerId), It.IsAny <bool>(), It.IsAny <bool>())) .ReturnsAsync((string customerId, bool includeNonVerified, bool includeDeactivated) => new CustomerProfileResponse { ErrorCode = CustomerProfileErrorCodes.None, Profile = new CustomerProfile.Client.Models.Responses.CustomerProfile { Email = _customerEmail, CustomerId = customerId } }); _customerProfileClientMock.Setup(o => o.CustomerProfiles .GetByCustomerIdAsync(It.Is <string>(customerId => customerId != _customerId), It.IsAny <bool>(), It.IsAny <bool>())) .ReturnsAsync((string customerId, bool includeNonVerified, bool includeDeactivated) => new CustomerProfileResponse { ErrorCode = CustomerProfileErrorCodes.CustomerProfileDoesNotExist }); _customerProfileClientMock .Setup(o => o.ReferralHotelProfiles.AddAsync(It.IsAny <ReferralHotelProfileRequest>())) .ReturnsAsync((ReferralHotelProfileRequest referralHotelProfileRequest) => new ReferralHotelProfileResponse { ErrorCode = ReferralHotelProfileErrorCodes.None }); _customerProfileClientMock.Setup(o => o.ReferralHotelProfiles .GetByIdAsync(It.Is <Guid>(referralId => referralId == _referralId))) .ReturnsAsync((Guid referralId) => new ReferralHotelProfileResponse { ErrorCode = ReferralHotelProfileErrorCodes.None, Data = new ReferralHotelProfile { ReferralHotelId = _referralId, Email = _email } }); _customerProfileClientMock.Setup(o => o.ReferralHotelProfiles .GetByIdAsync(It.Is <Guid>(referralId => referralId != _referralId))) .ReturnsAsync((Guid referralId) => new ReferralHotelProfileResponse { ErrorCode = ReferralHotelProfileErrorCodes.ReferralHotelProfileDoesNotExist }); _referralHotelsRepositoryMock.Setup(o => o.GetByReferrerIdAsync(It.IsAny <string>())) .ReturnsAsync((string referralId) => _referralHotelsEncrypted.Where(o => o.ReferrerId == referralId).ToList()); _referralHotelsRepositoryMock.Setup(o => o.GetByEmailHashAsync(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())) .ReturnsAsync((string emailHash, string partnerId, string location) => { var expression = _referralHotelsEncrypted.Where(o => o.EmailHash == emailHash); if (!string.IsNullOrEmpty(partnerId)) { expression = expression.Where(o => o.PartnerId == partnerId); } if (!string.IsNullOrEmpty(location)) { expression = expression.Where(o => o.Location == location); } return(expression.ToList()); }); _referralHotelsRepositoryMock.Setup(o => o.CreateAsync(It.IsAny <ReferralHotelEncrypted>())) .ReturnsAsync((ReferralHotelEncrypted referralHotelEncrypted) => { referralHotelEncrypted.Id = _referralId.ToString(); referralHotelEncrypted.CreationDateTime = DateTime.UtcNow; return(referralHotelEncrypted); }); _referralHotelsRepositoryMock.Setup(o => o.UpdateAsync(It.IsAny <ReferralHotelEncrypted>())) .ReturnsAsync((ReferralHotelEncrypted referralHotelEncrypted) => referralHotelEncrypted); _referralHotelsRepositoryMock.Setup(o => o.GetByConfirmationTokenAsync(It.IsAny <string>())) .ReturnsAsync((string confirmationToken) => _referralHotelsEncrypted.SingleOrDefault(o => o.ConfirmationToken == confirmationToken)); _currencyConverterClientMock.Setup(o => o.Converter.ConvertAsync(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <decimal>())) .ReturnsAsync(new ConverterResponse() { ErrorCode = ConverterErrorCode.None }); _partnerManagementClientMock.Setup(o => o.Partners.GetByIdAsync(It.IsAny <Guid>())) .ReturnsAsync(new PartnerDetailsModel()); _hashingManagerMock.Setup(o => o.GenerateBase(It.IsAny <string>())) .Returns((string value) => value); _settingsServiceMock.Setup(o => o.GetLeadConfirmationTokenLength()) .Returns(() => _confirmationTokenLength); _service = new ReferralHotelsService( _stakeServiceMock.Object, _customerProfileClientMock.Object, _currencyConverterClientMock.Object, _campaignClientMock.Object, _partnerManagementClientMock.Object, _rabbitPublisherMock.Object, _notificationPublisherServiceMock.Object, _referralHotelsRepositoryMock.Object, _settingsServiceMock.Object, _hashingManagerMock.Object, _referralExpirationPeriod, _referralLimitPeriod, _referralLimit, MapperHelper.CreateAutoMapper(), "AED", EmptyLogFactory.Instance); }