コード例 #1
0
        public async Task Get_WhenCalled_For_AuthenticatedUser_And_User_Is_Not_Found_Should_Return_BadRequestResult()
        {
            // Arrange
            var searchCriteria = new SearchDecksInputModel();

            _userManager.GetUserAsync(Arg.Any <ClaimsPrincipal>()).Returns((ApplicationUser)null);

            // Act
            var result = await _sut.Get(searchCriteria) as BadRequestResult;

            // Assert
            result.Should().BeOfType <BadRequestResult>();
        }
コード例 #2
0
        public async Task Get_WhenCalled_And_User_Is_Found_Should_Return_OkObjectResult()
        {
            // Arrange
            var searchCriteria = new SearchDecksInputModel();

            _userManager.GetUserAsync(Arg.Any <ClaimsPrincipal>()).Returns(new ApplicationUser {
                Id = Guid.NewGuid().ToString()
            });
            _mapper.Map <DecksByUserIdInputModel>(Arg.Any <SearchDecksInputModel>()).Returns(new DecksByUserIdInputModel());
            _mediator.Send(Arg.Any <IRequest <DeckSearchResultOutputModel> >()).Returns(new DeckSearchResultOutputModel());

            // Act
            var result = await _sut.Get(searchCriteria) as OkObjectResult;

            // Assert
            result.Should().BeOfType <OkObjectResult>();
        }
コード例 #3
0
ファイル: UsersController.cs プロジェクト: fablecode/dueltank
        public async Task <IActionResult> Get([FromRoute] string username, [FromQuery] SearchDecksInputModel searchModel)
        {
            if (ModelState.IsValid)
            {
                var inputModel = _mapper.Map <DecksByUsernameInputModel>(searchModel);

                var result = await _mediator.Send(new DecksByUsernameQuery
                {
                    Username   = username,
                    SearchTerm = inputModel.SearchTerm,
                    PageSize   = inputModel.PageSize,
                    PageIndex  = inputModel.PageIndex
                });

                return(Ok(result));
            }

            return(BadRequest(ModelState.Errors()));
        }
コード例 #4
0
ファイル: UsersController.cs プロジェクト: fablecode/dueltank
        public async Task <IActionResult> Get([FromQuery] SearchDecksInputModel searchModel)
        {
            var user = await GetCurrentUserAsync();

            if (user != null)
            {
                var inputModel = _mapper.Map <DecksByUserIdInputModel>(searchModel);

                var result = await _mediator.Send(new DecksByUserIdQuery
                {
                    UserId     = user.Id,
                    SearchTerm = inputModel.SearchTerm,
                    PageSize   = inputModel.PageSize,
                    PageIndex  = inputModel.PageIndex
                });

                return(Ok(result));
            }

            return(BadRequest());
        }