public async Task Retorna404SiActorNoExiste() { var nombreBD = Guid.NewGuid().ToString(); var contexto = ConstruirContext(nombreBD); var mapper = ConfigurarAutoMapper(); var controller = new ActoresController(contexto, mapper, null); var patchDoc = new JsonPatchDocument <ActorPatchDTO>(); var respuesta = await controller.Patch(1, patchDoc); var resultado = respuesta as StatusCodeResult; Assert.AreEqual(404, resultado.StatusCode); }
public async Task PatchActualizaUnSoloCampo() { var nombreDB = Guid.NewGuid().ToString(); var contexto = ConstruirContext(nombreDB); var mapper = ConfigurarAutoMapper(); var fechaNacimiento = DateTime.Now; var actor = new Actor() { Nombre = "Pepe", FechaNacimiento = fechaNacimiento }; contexto.Add(actor); await contexto.SaveChangesAsync(); var contexto2 = ConstruirContext(nombreDB); var controller = new ActoresController(contexto2, mapper, null); var objectValidator = new Mock <IObjectModelValidator>(); objectValidator.Setup(x => x.Validate( It.IsAny <ActionContext>(), It.IsAny <ValidationStateDictionary>(), It.IsAny <string>(), It.IsAny <object>() )); controller.ObjectValidator = objectValidator.Object; var patchDoc = new JsonPatchDocument <ActorPatchDTO>(); patchDoc.Operations.Add(new Operation <ActorPatchDTO>( "replace", "/nombre", null, "Claudia" )); var respuesta = await controller.Patch(1, patchDoc); var resultado = respuesta as StatusCodeResult; Assert.AreEqual(204, resultado.StatusCode); var contexto3 = ConstruirContext(nombreDB); var actorDB = await contexto3.Actores.FirstAsync(); Assert.AreEqual("Claudia", actorDB.Nombre); Assert.AreEqual(fechaNacimiento, actorDB.FechaNacimiento); }