コード例 #1
0
        public MockSet<ConsultarProdutoNaoElegivelClienteRequest, ConsultarProdutoNaoElegivelClienteResponse> GetMocksetforCustomer(long codigoCliente, string[] codigosProdutos)
        {
            var request = new ConsultarProdutoNaoElegivelClienteRequest()
            {
                CodigoCliente = codigoCliente
            };

            var response = new ConsultarProdutoNaoElegivelClienteResponse();
            response.Status = ExecutionStatus.Success;

            response.Produtos = new List<ConsultarProdutoNaoElegivelClienteProdutoDTO>();

            if (codigosProdutos != null)
            {
                var produtos = from produto in GetFullProductList()
                               where codigosProdutos.Contains(produto.CodigoProduto)
                               select produto;

                response.Produtos.AddRange(produtos);
            }
            else
            {
                response.Produtos.AddRange(GetFullProductList());
            }

            response.NumeroTotalRegistros = response.Produtos.Count;

            var mockSet = new MockSet<ConsultarProdutoNaoElegivelClienteRequest, ConsultarProdutoNaoElegivelClienteResponse>();
            mockSet.request = request;
            mockSet.response = response;

            return mockSet;
        }
コード例 #2
0
        public void Success_ParceladoOuAVista()
        {
            var requestData = new ConsultarProdutoNaoElegivelClienteRequest()
            {
                CodigoCliente = 0000100250,
            };
            var dao = DAOFactory.GetDAO<ConsultarProdutoNaoElegivelClienteDAO, ConsultarProdutoNaoElegivelClienteRequest, ConsultarProdutoNaoElegivelClienteResponse>();
            var response = dao.Execute(requestData);

            Assert.IsNotNull(response, "Response is null");
            Assert.AreEqual(response.Status, ExecutionStatus.Success, "Response.Status is not Success");
            Assert.IsNotNull(response.Produtos, "Response.Produtos is null");
            Assert.AreEqual(response.NumeroTotalRegistros, response.Produtos.Count, "NumeroTotalRegistros does not equal Response.Produtos.Count");

            response.Produtos.ForEach(
                produto =>
                {
                    Assert.IsFalse(string.IsNullOrEmpty(produto.CodigoProduto), "CodigoProduto is null or empty");
                    Assert.IsFalse(string.IsNullOrEmpty(produto.TipoGrupoProduto), "TipoGrupoProduto is null or empty");

                    int ordemApresentacao;
                    Assert.IsTrue(int.TryParse(produto.OrdemApresentacao, out ordemApresentacao), "OrdemApresentacao is not numeric");
                }
            );
            Assert.IsTrue(response.Produtos.Any(produto => produto.TipoGrupoProduto == "1" || produto.TipoGrupoProduto == "3"), "TipoGrupoProduto not found");
        }
コード例 #3
0
        public void BusinessError_EcInexistente()
        {
            var requestData = new ConsultarProdutoNaoElegivelClienteRequest()
            {
                CodigoCliente = 9999999999
            };
            var dao = DAOFactory.GetDAO<ConsultarProdutoNaoElegivelClienteDAO, ConsultarProdutoNaoElegivelClienteRequest, ConsultarProdutoNaoElegivelClienteResponse>();
            var response = dao.Execute(requestData);

            Assert.IsNotNull(response, "Response is null");
            Assert.AreEqual(response.Status, ExecutionStatus.BusinessError, "Response.Status is not BusinessError");
        }
コード例 #4
0
        public void TechnicalErro_OSB()
        {
            var requestData = new ConsultarProdutoNaoElegivelClienteRequest()
            {
                CodigoCliente = 10011007
            };
            var dao = DAOFactory.GetDAO<ConsultarProdutoNaoElegivelClienteDAO, ConsultarProdutoNaoElegivelClienteRequest, ConsultarProdutoNaoElegivelClienteResponse>();
            var response = dao.Execute(requestData);

            Assert.IsNotNull(response, "Response is null");
            Assert.AreEqual(response.Status, ExecutionStatus.TechnicalError, "Response.Status is not TechnicalError");
        }
コード例 #5
0
        public void TechnicalErro_AccessError()
        {
            var requestData = new ConsultarProdutoNaoElegivelClienteRequest()
            {
                CodigoCliente = 9999999999
            };
            var dao = DAOFactory.GetDAO<ConsultarProdutoNaoElegivelClienteDAO, ConsultarProdutoNaoElegivelClienteRequest, ConsultarProdutoNaoElegivelClienteResponse>();
            var response = dao.Execute(requestData);

            Assert.IsNotNull(response, "Response is null");
            Assert.AreEqual(response.Status, ExecutionStatus.TechnicalError, "Response.Status is not TechnicalError");
            Assert.AreEqual(response.ErrorCode, ErrorCodes.DAO_OSB_CALL_NAME_RESOLUTION_FAILURE_ERROR, "Response.ErrorCode is not DAO_OSB_CALL_NAME_RESOLUTION_FAILURE_ERROR");
        }
コード例 #6
0
 public ConsultarProdutoNaoElegivelClienteResponse ConsultarProdutoNaoElegivelCliente(ConsultarProdutoNaoElegivelClienteRequest requestData)
 {
     var business = new ConsultarProdutoNaoElegivelClienteBL();
     var response = this.ExecuteBusiness(business, requestData);
     return response;
 }
コード例 #7
0
        private bool GetNonElegibleProducts()
        {
            long clientIdNumber = new long();
            if (!long.TryParse(GetCrmContextValue(Constants.CONTEXTOCRM_CLIENTID), out clientIdNumber))
            {
                ErrorMessage = "Código do cliente inválido";
                ErrorId = Trace.CorrelationManager.ActivityId.ToString("D", CultureInfo.InvariantCulture);
                ViewState = ViewStates.LoadingError;
                _logger.LogError(ErrorMessage);
                return false;
            }

            // Call the model to get the products list
            _nonElegibleProductsModel = new NonElegibleProductsModel();

            ConsultarProdutoNaoElegivelClienteRequest requestEnabledProducts = new ConsultarProdutoNaoElegivelClienteRequest();
            requestEnabledProducts.CodigoCliente = clientIdNumber;
            _nonElegibleProductsModel.Request = requestEnabledProducts;

            _nonElegibleProductsModel.Execute();
          
            return true;
        }
コード例 #8
0
        public MockSet<ConsultarProdutoNaoElegivelClienteRequest, ConsultarProdutoNaoElegivelClienteResponse> GetErrorMocksetforCustomer(long codigoCliente, string typeError)
        {
            var request = new ConsultarProdutoNaoElegivelClienteRequest()
            {
                CodigoCliente = codigoCliente
            };

            var response = new ConsultarProdutoNaoElegivelClienteResponse();


            switch (typeError)

            { 
                case "BusinessError":
                    response.Status = ExecutionStatus.BusinessError;
                    break;

                case "TechnicalError":
                    response.Status = ExecutionStatus.TechnicalError;
                    break;


                case "DetalhesError":
                    response.Status = ExecutionStatus.Success;
                    response.Produtos = new List<ConsultarProdutoNaoElegivelClienteProdutoDTO>();

                    response.Produtos.AddRange(GetErrorProductList());
                    response.NumeroTotalRegistros = response.Produtos.Count;
                    break;


            //   case "BusinessError":
            //       response.Status = ExecutionStatus.BusinessError;
            //       break;
            //
            }

            var mockSet = new MockSet<ConsultarProdutoNaoElegivelClienteRequest, ConsultarProdutoNaoElegivelClienteResponse>();
            mockSet.request = request;
            mockSet.response = response;

            return mockSet;
        }