public async Task ShouldReturnNull_WhenReferralCreateFails()
        {
            // Arrange
            var referralClient = new Mock <IReferralClient>();

            referralClient.Setup(c => c.ReferralApi.GetAsync(It.IsAny <string>()))
            .ReturnsAsync(new ReferralResultResponse()
            {
                ReferralCode = null,
                ErrorCode    = ReferralErrorCodes.ReferralNotFound
            });

            referralClient.Setup(c => c.ReferralApi.PostAsync(It.IsAny <ReferralCreateRequest>()))
            .ReturnsAsync(new ReferralCreateResponse()
            {
                ReferralCode = null
            });

            var service = new ReferralService(referralClient.Object);

            // Act
            var result = await service.GetOrCreateReferralCodeAsync("123");

            // Assert
            Assert.Null(result);
        }
Esempio n. 2
0
        public void GetAllPatients_Should_Empty()
        {
            // Arrange
            var service = new ReferralService();

            // Act
            var patients = service.GetAllPatients();

            // Assert
            patients.ShouldBeEmpty();
        }
Esempio n. 3
0
        public void AddPatient_Should_Save_Patient()
        {
            // Arrange
            var service = new ReferralService();

            // Act
            var patient = service.AddPatient(new Patient { Email = "*****@*****.**" });

            // Assert
            patient.ShouldNotBeNull();
            patient.Email.ShouldEqual("*****@*****.**");
        }
Esempio n. 4
0
        public ActionResult ReferralsResendOffers(List <ReferFriend> itemsToBeReferred)
        {
            JsonResponse jsonResponse = new JsonResponse();

            jsonResponse.errors  = new List <string>();
            jsonResponse.RetCode = "1";

            try {
                ReferralService  objReferal = new ReferralService();
                BlueGreenContext bgContext  = new BlueGreenContext();

                var filteredReferralsWithEmails = itemsToBeReferred.Where(x => !string.IsNullOrEmpty(x.txtEmail) && x.txtEmail != "");
                if (filteredReferralsWithEmails.Any())
                {
                    foreach (ReferFriend eachReferer in filteredReferralsWithEmails)
                    {
                        SendDataToResponsysReq requestObject = new SendDataToResponsysReq();
                        SaveReferralResponse   emailResponse = new SaveReferralResponse();
                        if (bgContext != null && bgContext.bxgOwner != null)
                        {
                            requestObject = objReferal.PrepareResponsys(eachReferer, bgContext);
                            emailResponse = objReferal.SubmitResponsys(requestObject);
                        }
                        if (emailResponse.Status == "true")
                        {
                            jsonResponse.RetCode = "0";
                        }
                        else
                        {
                            if (emailResponse.Errors != null && emailResponse.Errors.Count > 0)
                            {
                                Sitecore.Diagnostics.Log.Error("Unexpected exception while resending offer(ReferralsResendOffers)", emailResponse.Errors[0].ShortText);
                            }
                            jsonResponse.errors.Add("Oops! Something went wrong. Please try sending again in a few minutes. If the issue persists, please call Owner Services at 866-362-6733.");
                            break;
                        }
                    }
                }
                else
                {
                    jsonResponse.errors.Add("Please Stop Tampering Html Data !!!");
                }
            }
            catch (Exception ex) {
                jsonResponse.RetCode = "1";
                jsonResponse.errors.Add("Oops! Something went wrong. Please try sending again in a few minutes. If the issue persists, please call Owner Services at 866-362-6733.");

                Sitecore.Diagnostics.Log.Error("Unexpected exception while resending offer(ReferralsResendOffers)", ex);
            }

            return(Json(jsonResponse));
        }
Esempio n. 5
0
        public void GetAllPatients_Should_Return_Patients()
        {
            // Arrange
            using (var context = new EReferralContext())
            {
                context.Patients.Add(new Patient { Email = "*****@*****.**" });
                context.Patients.Add(new Patient { Email = "*****@*****.**" });
                context.SaveChanges();
            }

            var service = new ReferralService();

            // Act
            var patients = service.GetAllPatients();

            // Assert
            patients.ShouldNotBeNull();
            patients.Count.ShouldEqual(2);
        }
        public async Task ShouldGetReferralCode_WhenReferralCodeExits()
        {
            // Arrange
            var referralClient = new Mock <IReferralClient>();
            var referralCode   = "refcod";

            referralClient.Setup(c => c.ReferralApi.GetAsync(It.IsAny <string>()))
            .ReturnsAsync(new ReferralResultResponse()
            {
                ReferralCode = referralCode
            });

            var service = new ReferralService(referralClient.Object);

            // Act
            var result = await service.GetOrCreateReferralCodeAsync("123");

            // Assert
            Assert.Equal(referralCode, result);
        }
        public ReferralServiceTestsFixture()
        {
            ReferralRepositoryMock = new Mock <IReferralRepository>(MockBehavior.Strict);
            HashingManagerMock     = new Mock <IHashingManager>(MockBehavior.Strict);

            Service = new ReferralService(
                ReferralRepositoryMock.Object,
                6,
                HashingManagerMock.Object,
                EmptyLogFactory.Instance);

            Referral = new Domain.Models.Referral()
            {
                CustomerId   = CustomerId,
                Id           = Guid.NewGuid().ToString("D"),
                ReferralCode = ReferralCode
            };

            SetupCalls();
        }
Esempio n. 8
0
        public ActionResult ReferFriend(string FirstName, string LastName, string EmailId, string PhoenNumber, string City, string State, string Destination, string Message, bool IsSendMailChecked)
        {
            JsonResponse jsonResponse = new JsonResponse();

            jsonResponse.errors  = new List <string>();
            jsonResponse.RetCode = "1";  //default to error
            Models.ReferFriend objRefFri = new Models.ReferFriend();
            objRefFri.txtFirstName      = FirstName;
            objRefFri.txtLastName       = LastName;
            objRefFri.txtEmail          = EmailId;
            objRefFri.txtPhone          = PhoenNumber;
            objRefFri.txtDestination    = Destination;
            objRefFri.txtCity           = City;
            objRefFri.txtState          = State;
            objRefFri.txtMessage        = Message;
            objRefFri.IsSendMailChecked = IsSendMailChecked;

            SaveReferralResponse objResponse = new SaveReferralResponse();
            ReferralService      objReferal  = new ReferralService();

            objResponse = objReferal.ExecuteSaveReferral(objRefFri);

            if (objResponse.Success == "true")
            {
                jsonResponse.RetCode = "0";
            }
            else
            {
                if (objResponse.Errors.Count > 0)
                {
                    jsonResponse.errors.Add(objResponse.Errors[0].ShortText);
                }
                else
                {
                    jsonResponse.errors.Add("Error While Submitting Referral");
                }
            }

            return(Json(jsonResponse, JsonRequestBehavior.AllowGet));
        }
Esempio n. 9
0
        public async Task Then_Send_Referral_Email_To_Employers_Queue(
            MatchingDbContext dbContext,
            [Frozen] Domain.Models.Opportunity opportunity,
            [Frozen] Domain.Models.Provider provider,
            [Frozen] Domain.Models.ProviderVenue venue,
            [Frozen] BackgroundProcessHistory backgroundProcessHistory,
            IMessageQueueService messageQueueService,
            IRepository <OpportunityItem> repo,
            IRepository <BackgroundProcessHistory> backgroundProcessHistoryRepository
            )
        {
            //Arrange
            backgroundProcessHistory.Status = BackgroundProcessHistoryStatus.Pending.ToString();

            await DataBuilder.SetTestData(dbContext, provider, venue, opportunity, backgroundProcessHistory);

            var sut = new ReferralService(messageQueueService, repo, backgroundProcessHistoryRepository);

            repo.GetManyAsync(Arg.Any <Expression <Func <OpportunityItem, bool> > >()).Returns(opportunity.OpportunityItem.AsQueryable());

            //Act
            await sut.ConfirmOpportunitiesAsync(opportunity.Id, "username");

            //Assert

            var backgroundProcessData =
                dbContext.BackgroundProcessHistory.FirstOrDefault(x => x.Id == backgroundProcessHistory.Id);

            await messageQueueService.Received(1)
            .PushEmployerReferralEmailMessageAsync(Arg.Any <SendEmployerReferralEmail>());

            await messageQueueService.Received(1)
            .PushProviderReferralEmailMessageAsync(Arg.Any <SendProviderReferralEmail>());

            backgroundProcessData?.Status.Should().Be(BackgroundProcessHistoryStatus.Pending.ToString());
        }
Esempio n. 10
0
 public ReferralController()
 {
     DoctorRepository = new DoctorService();
     ReferralServices = new ReferralService();
 }