예제 #1
0
        public OrderedTextResult OrderedText(OrderedTextParameter parameter, string securityToken)
        {
            var request = new OrderedTextRequest {
                Parameters = parameter
            };
            HttpClientHandler clientHandler = new HttpClientHandler();

            clientHandler.ServerCertificateCustomValidationCallback = (sender, cert, chain, sslPolicyErrors) => { return(true); };

            using (var httpClient = new HttpClient(clientHandler)
            {
                BaseAddress = new Uri(url)
            })
            {
                try
                {
                    httpClient.DefaultRequestHeaders.Add("Authorization", securityToken);
                    httpClient.Timeout = TimeSpan.FromMinutes(30);
                    var httpResponseMessage = httpClient.PostAsJsonAsync("textProcess/OrderedText", request).Result;
                    var response            = httpResponseMessage.Content.ReadAsAsync <OrderedTextResponse>().Result;
                    if (response.State.HasError)
                    {
                        throw new Exception(response.State.ErrorMessage);
                    }

                    return(response.Result);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }
예제 #2
0
        public Task <OrderedTextResponse> OrderedText(OrderedTextRequest request)
        {
            OrderedTextResponse response = new OrderedTextResponse();

            List <string> text = request.Parameters.TextToOrder.Split(" ").ToList();

            switch (request.Parameters.OrderOption)
            {
            case "AlphabeticAsc":
                response.Result.OrderedText.OrderedWords = text.OrderBy(q => q).ToList();
                break;

            case "AlphabeticDesc":
                response.Result.OrderedText.OrderedWords = text.OrderByDescending(q => q).ToList();
                break;

            case "LenghtAsc":
                var resultText = from s in text
                                 orderby s.Length ascending
                                 select s;

                response.Result.OrderedText.OrderedWords = resultText.ToList();
                break;
            }

            return(Task.FromResult(response));
        }
예제 #3
0
        public void TestMethod2()
        {
            //Arrange
            OrderedTextRequest request = new OrderedTextRequest();

            request.Parameters = new OrderedTextParameter();

            request.Parameters.TextToOrder = "ESTO ES UNA PRUEBA";
            request.Parameters.OrderOption = "AlphabeticAsc";

            string resultToCompare = "ES";

            //Act
            var result = _textProcessApplicationService.OrderedText(request).Result;

            //Assert
            Assert.AreEqual(result.Result.OrderedText.OrderedWords.FirstOrDefault(), resultToCompare);
        }
 public Task <OrderedTextResponse> OrderedText(OrderedTextRequest request)
 {
     return(_textProcessDomainService.OrderedText(request));
 }
 public async Task <OrderedTextResponse> OrderedText(OrderedTextRequest request)
 {
     return(await _textProcessApplicationService.OrderedText(request));
 }