예제 #1
0
        public IHttpActionResult Get([FromUri] UserViewSearchCriteria userViewSearchCriteria)
        {
            //int screenid = userViewSearchCriteria.ScreenName;

            if (userViewSearchCriteria == null || string.IsNullOrWhiteSpace(userViewSearchCriteria.ScreenName))
            {
                return(BadRequest("No Parameter found"));
            }
            //    string screenid = userViewSearchCriteria.ScreenName;
            return(this.GetResponse(EntityManager.GetByUserViewSreenName(userViewSearchCriteria.ScreenName)));
            // return null;
        }
        public void UserViewScreenController_Get_Returns_BadResponse(UserViewSearchCriteria criteria)
        {
            #region Arrange

            SetupUserIdentity();

            //Build response
            IList <grs_VGrsUserView> userViewScreenDbData = new List <grs_VGrsUserView>
            {
                new grs_VGrsUserView
                {
                    ViewId     = 101,
                    Userid     = 100,
                    Default    = false,
                    Screenname = "GRS.UW_Workbench",
                    Viewname   = "mysubmissions",
                    Layout     = "SomeJason",
                    Customview = false,
                    Sortorder  = 1
                }
            };

            // Search method
            userViewScreenRepository.Setup(p => p.GetMany(It.IsAny <Expression <Func <grs_VGrsUserView, bool> > >())).Returns(userViewScreenDbData);

            var httpRequest = new HttpRequestMessage(new HttpMethod(AppSettings.HTTPGET), $"{AppSettings.BASEURL}{RouteHelper.UserviewRoutePrefix}");

            UserViewController userviewController = CreateUserViewController(httpRequest, userViewRepository.Object, userViewScreenRepository.Object);

            #endregion

            #region Act

            var response = userviewController.Get(criteria) as BadRequestErrorMessageResult;

            #endregion

            #region Assert

            string expectedMessage = "No Parameter found";
            Assert.IsInstanceOf <BadRequestErrorMessageResult>(response);
            Assert.AreEqual(expectedMessage, response.Message);
        }
        public void UserViewScreenController_Get_Returns_OKResponseCode(UserViewSearchCriteria criteria)
        {
            #region Arrange

            SetupUserIdentity();

            //Build response
            IList <grs_VGrsUserView> userViewScreenDbData = new List <grs_VGrsUserView>
            {
                new grs_VGrsUserView
                {
                    ViewId     = 101,
                    Userid     = 100,
                    Default    = false,
                    Screenname = "GRS.UW_Workbench",
                    Viewname   = "mysubmissions",
                    Layout     = "SomeJason",
                    Customview = false,
                    Sortorder  = 1
                }
            };

            // Search method
            userViewScreenRepository.Setup(p => p.GetMany(It.IsAny <Expression <Func <grs_VGrsUserView, bool> > >())).Returns(userViewScreenDbData);

            var httpRequest = new HttpRequestMessage(new HttpMethod(AppSettings.HTTPGET), $"{AppSettings.BASEURL}{RouteHelper.UserviewRoutePrefix}");
            UserViewController userviewController = CreateUserViewController(httpRequest, userViewRepository.Object, userViewScreenRepository.Object);

            #endregion

            #region Act

            var response      = userviewController.Get(criteria);
            var contentResult = response as NegotiatedContentResult <ResponseCollection <UserView> >;

            #endregion

            #region Assert

            #region Expected


            var expectedUserViewScreen = new UserView
            {
                ViewId     = 101,
                UserId     = 100,
                Default    = false,
                ScreenName = "GRS.UW_Workbench",
                ViewName   = "mysubmissions",
                Layout     = null,
                CustomView = false,
                SortOrder  = 1
            };

            //var expectedGetLink = new Link(LinkType.RelatedEntity, EntityType.Notes, $"v1/userviews?screenname={expectedUserViewScreen.ScreenName}", HttpMethodType.GET);

            #endregion

            Assertions.AssertOkResponse(contentResult);

            var summaryData = contentResult.Content.results;

            for (int i = 0; i <= summaryData.Count - 1; i++)
            {
                //Data
                var actualUserViewScreen = summaryData[i].data;
                Assertions.AssertData(expectedUserViewScreen, actualUserViewScreen);

                // Links & Messages
                //Assert.Multiple(() =>
                //{
                //    Assert.IsNotEmpty(summaryData[i].links);
                //    Assert.AreEqual(1, summaryData[i].links.Count);
                //    Assertions.AssertLink(expectedGetLink, summaryData[i].links[0]);
                //});

                Assert.IsEmpty(summaryData[i].messages);
            }

            #endregion
        }