public async Task PostPais_Created() { var options = Options; var pais = new Pais() { PaisId = Guid.NewGuid(), Nome = "Brasil", Sigla = "BR", }; using (CompeticoesDbContext context = new CompeticoesDbContext(options)) { var controller = new PaisesController(context); var result = await controller.PostPais(pais); var createdResult = Assert.IsType <CreatedAtActionResult>(result); var paisResult = Assert.IsType <Pais>(createdResult.Value); Assert.Equal(pais, paisResult); Assert.Equal("GetPais", createdResult.ActionName); Assert.Equal(pais.PaisId, createdResult.RouteValues["id"]); } using (CompeticoesDbContext context = new CompeticoesDbContext(options)) { var paisResult = await context.Paises.FirstOrDefaultAsync(); var jsonResult = Newtonsoft.Json.JsonConvert.SerializeObject(paisResult); var paisJson = Newtonsoft.Json.JsonConvert.SerializeObject(pais); Assert.Equal(paisJson, jsonResult); } }
public void TestGet() { //arrange PaisesController controller = new PaisesController(); Pais pais = new Pais(); { Name = "Bolivia", Capital = "Sucre", Poblacion = 1501211, LatLng = "-150°,85°", TimeZone = "9:04/15/19", Moneda = "Euros", Bandera = "https://www.pinterest.com/marcela7340/bolivia/" }; //act IHttpActionResult ActionResult = controller.PostPais(pais); var createdResult = ActionResult as CreatedAtRouteNegotiatedContentResult <PaisesController>; //assert Assert.IsNotNull(createdResult); Assert.AreEqual("DefaultApi", createdResult.RouteName); Assert.IsNotNull(createdResult.RouteValues["name"]); } }
public async Task PostPaisAsync_ShouldCreateNewPaisAsync() { Thread.Sleep(2000); //Arrange var testContext = OMSContextMocker.GetOMSContext("DBTestForPaisesPost"); var testController = new PaisesController(testContext); //Act var result = await testController.PostPais(new Pais { Id = "DD", Nome = "TestPaisDD", ZonaId = "CC" }); var get = await testController.GetPais("DD"); //Assert Assert.IsType <Pais>(get.Value); Assert.IsType <CreatedAtActionResult>(result.Result); }
public async Task PostPais_BadRequest_ModelState_Invalido() { var options = Options; using (CompeticoesDbContext context = new CompeticoesDbContext(options)) { var controller = new PaisesController(context); controller.ModelState.AddModelError("Key", "Error"); var result = await controller.PostPais(new Pais()); var badRequestResult = Assert.IsType <BadRequestObjectResult>(result); var valueResult = Assert.IsType <SerializableError>(badRequestResult.Value); var value = Assert.IsType <string[]>(valueResult["Key"]); Assert.Equal("Error", value[0]); } }