Example #1
0
        public void ValidateImmunization()
        {
            var mockDelegate = new Mock <IImmunizationDelegate>();
            RequestResult <IEnumerable <ImmunizationResponse> > delegateResult = new RequestResult <IEnumerable <ImmunizationResponse> >()
            {
                ResultStatus    = Common.Constants.ResultType.Success,
                ResourcePayload = new List <ImmunizationResponse>()
                {
                    new ImmunizationResponse()
                    {
                        Id   = Guid.NewGuid(),
                        Name = "MockImmunization",
                        OccurrenceDateTime = DateTime.Now,
                        SourceSystemId     = "MockSourceID"
                    },
                },
                PageIndex        = 0,
                PageSize         = 5,
                TotalResultCount = 1,
            };
            RequestResult <IEnumerable <ImmunizationModel> > expectedResult = new RequestResult <IEnumerable <ImmunizationModel> >()
            {
                ResultStatus     = delegateResult.ResultStatus,
                ResourcePayload  = ImmunizationModel.FromPHSAModelList(delegateResult.ResourcePayload),
                PageIndex        = delegateResult.PageIndex,
                PageSize         = delegateResult.PageSize,
                TotalResultCount = delegateResult.TotalResultCount,
            };

            mockDelegate.Setup(s => s.GetImmunizations(It.IsAny <string>(), It.IsAny <int>())).Returns(Task.FromResult(delegateResult));
            IImmunizationService service = new ImmunizationService(new Mock <ILogger <ImmunizationService> >().Object, mockDelegate.Object);

            var actualResult = service.GetImmunizations(string.Empty, 0);

            Assert.True(expectedResult.IsDeepEqual(actualResult.Result));
        }
        /// <inheritdoc/>
        public async Task <RequestResult <IEnumerable <ImmunizationModel> > > GetImmunizations(string bearerToken, int pageIndex = 0)
        {
            RequestResult <IEnumerable <ImmunizationResponse> > delegateResult = await this.immunizationDelegate.GetImmunizations(bearerToken, pageIndex).ConfigureAwait(true);

            if (delegateResult.ResultStatus == ResultType.Success)
            {
                return(new RequestResult <IEnumerable <ImmunizationModel> >()
                {
                    ResultStatus = delegateResult.ResultStatus,
                    ResourcePayload = ImmunizationModel.FromPHSAModelList(delegateResult.ResourcePayload),
                    PageIndex = delegateResult.PageIndex,
                    PageSize = delegateResult.PageSize,
                    TotalResultCount = delegateResult.TotalResultCount,
                });
            }
            else
            {
                return(new RequestResult <IEnumerable <ImmunizationModel> >()
                {
                    ResultStatus = delegateResult.ResultStatus,
                    ResultError = delegateResult.ResultError,
                });
            }
        }