コード例 #1
0
        public void Rejeitado()
        {
            //Lojista faz pedido a atacadista, caso dê certo atacadista envia a proposta de orçamento neste momento
            List <Order>  orders     = MockTest.getRequestOrders();
            string        retornoApi = CallApi.PostRequest(JsonConvert.SerializeObject(orders), BASE_WHOLESALE + WHOLESALE_POSTORDER);
            OrderResponse orderResp  = null;

            try
            {
                orderResp = JsonConvert.DeserializeObject <OrderResponse>(retornoApi);
            }
            catch (Exception ex) { }

            Assert.False(orderResp == null, "OrderRequest tem que retornar o tipo OrderResponse sem erro");



            //Verificar se o atacadista enviou para o lojista a proposta de orçamento ao receber o pedido
            Budget budgetResp = null;

            retornoApi = CallApi.GetRequest(BASE_SHOPKEEPER + SHOPKEEPER_BUDGETS + "/" + orderResp.budgetCode);
            try
            {
                budgetResp = JsonConvert.DeserializeObject <Budget>(retornoApi);
            }
            catch (Exception ex) { }

            Assert.False(budgetResp == null, "não foi possível recuperar orçamento");


            //Lojista manda para o atacadista o cancelamento da ordem do orçamento
            Budget rejectBudget = null;
            RequestChangeStatus requestStatus = new RequestChangeStatus("Rejeitado");

            retornoApi = CallApi.PostRequest(JsonConvert.SerializeObject(requestStatus), BASE_WHOLESALE + WHOLESALE_PATCHORDER + "/" + orderResp.budgetCode, true);
            try
            {
                rejectBudget = JsonConvert.DeserializeObject <Budget>(retornoApi);
            }
            catch (Exception ex) { }

            Assert.False(rejectBudget == null, "não foi possível recuperar orçamento");
            Assert.True(rejectBudget.status.Equals(requestStatus.status), "O pedido não foi cancelado pelo atacadista");
        }