示例#1
0
        public void Concepto_Post_DebeInsertarCorretamente()
        {
            // arrange

            var conceptoNuevo = new FCCxCConcepto()
            {
                DscTipo             = "Nuevo concepto csanabria",
                CodEstado           = "A",
                CtaFinancieraDebito = "1",
                UsarExpiracion      = "N",
                NumDiasExpira       = 0,
                EnviaNotificacion   = "N"
            };

            var ctrl = new ConceptoController();

            ctrl.Request       = new HttpRequestMessage();
            ctrl.Configuration = new HttpConfiguration();

            // act

            //invocar el post del controlador Api
            HttpResponseMessage result = ctrl.Post(conceptoNuevo);

            //notas: 1. reporte de errores es pobre, negocios y datos solo retornan false si hubo error
            //en el api detecto error y genero un mensaje de tipo InternalServerError, pero no tengo más detalles,
            //no hay excepciones en las capas de datos y negocios, tuve que depurar para ver que era null exception
            //2. idealmente por buen diseño el api debería devolver un StatusCode.OK con el Id del nuevo registro creado, pero
            //la implementación de las capas no lo permiten

            // assert
            Assert.AreNotEqual(result.StatusCode, System.Net.HttpStatusCode.InternalServerError, "Error en la inserción"); //TODO: validar que sea OK
        }