Exemplo n.º 1
0
        public async Task <IActionResult> RunQuery([FromBody] RunQueryRequest request)
        {
            try
            {
                CheckRunQueryRequestValidity(request);

                var user = await userManager.GetUserAsync(HttpContext.User);

                var userId   = user == null ? Guid.Empty : user.Id;
                var userName = user == null ? null : user.UserName;

                var excludedTags = (request.ExcludedTags.Count() == 1 && request.ExcludedTags.First() == allTagsFakeGuid) ? null : request.ExcludedTags;

                var applicationRequest = new SearchCards.Request(request.Deck, request.DeckIsInclusive, request.Heap, request.PageNo, request.PageSize, request.RequiredText, request.RequiredTags, excludedTags, request.Visibility, request.RatingFilteringMode, request.RatingFilteringValue, request.NotificationFiltering);

                var applicationResult = new SearchCards(dbContext).Run(applicationRequest, userId);

                var result = new RunQueryViewModel(applicationResult, userName, localizer, decksControllerLocalizer);

                return(base.Ok(result));
            }
            catch (SearchResultTooBigForRatingException)
            {
                return(ControllerError.BadRequest(localizer["SearchTooBigForRatingFiltering"].Value, this));
            }
            catch (Exception e)
            {
                return(ControllerError.BadRequest(e, this));
            }
        }
Exemplo n.º 2
0
        public void SearchByName(string name)
        {
            var service = new SearchCards();
            var result  = service.SearchByName(name);
            var card    = result.Value.FirstOrDefault();

            Assert.True(result.IsSuccess);
            Assert.Equal(name, card.Name);
        }
Exemplo n.º 3
0
        public void SearchBySet(string set)
        {
            var service = new SearchCards();
            var result  = service.SearchBySet(set);
            var card    = result.Value.FirstOrDefault();

            Assert.True(result.IsSuccess);
            Assert.Equal(set, card.SetName);
        }
Exemplo n.º 4
0
 private void Btn_search_Click(object sender, EventArgs e)
 {
     SearchCards?.Invoke(txtbox_search.Text);
 }