public MockSet<ConsultarProdutoElegivelClienteRequest, ConsultarProdutoElegivelClienteResponse> GetMocksetforCustomer(long codigoCliente, string[] codigosProdutos)
        {
            var request = new ConsultarProdutoElegivelClienteRequest()
            {
                CodigoCliente = codigoCliente
            };

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

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

            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<ConsultarProdutoElegivelClienteRequest, ConsultarProdutoElegivelClienteResponse>();
            mockSet.request = request;
            mockSet.response = response;

            return mockSet;
        }
        public void Success_ParceladoOuAVista()
        {
            var requestData = new ConsultarProdutoElegivelClienteRequest()
            {
                CodigoCliente = 0000100250,
            };
            var dao = DAOFactory.GetDAO<ConsultarProdutoElegivelClienteDAO, ConsultarProdutoElegivelClienteRequest, ConsultarProdutoElegivelClienteResponse>();
            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");
        }
        public void BusinessError_EcInexistente()
        {
            var requestData = new ConsultarProdutoElegivelClienteRequest()
            {
                CodigoCliente = 9999999999
            };
            var dao = DAOFactory.GetDAO<ConsultarProdutoElegivelClienteDAO, ConsultarProdutoElegivelClienteRequest, ConsultarProdutoElegivelClienteResponse>();
            var response = dao.Execute(requestData);

            Assert.IsNotNull(response, "Response is null");
            Assert.AreEqual(response.Status, ExecutionStatus.BusinessError, "Response.Status is not BusinessError");
        }
        public void TechnicalErro_OSB()
        {
            var requestData = new ConsultarProdutoElegivelClienteRequest()
            {
                CodigoCliente = 10011007
            };
            var dao = DAOFactory.GetDAO<ConsultarProdutoElegivelClienteDAO, ConsultarProdutoElegivelClienteRequest, ConsultarProdutoElegivelClienteResponse>();
            var response = dao.Execute(requestData);

            Assert.IsNotNull(response, "Response is null");
            Assert.AreEqual(response.Status, ExecutionStatus.TechnicalError, "Response.Status is not TechnicalError");
        }
        public void TechnicalErro_AccessError()
        {
            var requestData = new ConsultarProdutoElegivelClienteRequest()
            {
                CodigoCliente = 10011009,
            };
            var dao = DAOFactory.GetDAO<ConsultarProdutoElegivelClienteDAO, ConsultarProdutoElegivelClienteRequest, ConsultarProdutoElegivelClienteResponse>();
            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");
        }
Beispiel #6
0
 public ConsultarProdutoElegivelClienteResponse ConsultarProdutoElegivelCliente(ConsultarProdutoElegivelClienteRequest requestData)
 {
     var business = new ConsultarProdutoElegivelClienteBL();
     var response = this.ExecuteBusiness(business, requestData);
     return response;
 }
        public MockSet<ConsultarProdutoElegivelClienteRequest, ConsultarProdutoElegivelClienteResponse> GetErrorMocksetforCustomer(long codigoCliente, string typeError)
        {
            var request = new ConsultarProdutoElegivelClienteRequest()
            {
                CodigoCliente = codigoCliente
            };

            var response = new ConsultarProdutoElegivelClienteResponse();

            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<ConsultarProdutoElegivelClienteProdutoDTO>();

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


                //   case "BusinessError":
                //       response.Status = ExecutionStatus.BusinessError;
                //       break;
                //
            }
            var mockSet = new MockSet<ConsultarProdutoElegivelClienteRequest, ConsultarProdutoElegivelClienteResponse>();
            mockSet.request = request;
            mockSet.response = response;

            return mockSet;
        }
        private bool GetNonEnabledProducts()
        {
            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
            _nonEnabledProductsModel = new NonEnabledProductsModel();

            ConsultarProdutoElegivelClienteRequest requestNonEnabledProducts = new ConsultarProdutoElegivelClienteRequest();
            requestNonEnabledProducts.CodigoCliente = clientIdNumber;
            _nonEnabledProductsModel.Request = requestNonEnabledProducts;

            _nonEnabledProductsModel.Execute();
            return true;
        }