コード例 #1
0
        public async Task PutPaisbyIDAsync_ShouldUpdatePaisCCAsync()
        {
            Thread.Sleep(2000);
            //Arrange
            var testContext    = OMSContextMocker.GetOMSContext("DBTestForPaisesPutID");
            var testController = new PaisesController(testContext);

            //Act
            var getPais = await testController.GetPais("CC");

            var pais = getPais.Value;

            pais.Nome   = "TestPaisCCUpdated";
            pais.ZonaId = "CC";
            var result = await testController.PutPais("CC", pais);

            var getresult = await testController.GetPais("CC");

            //Assert
            var items = Assert.IsType <Pais>(getresult.Value);

            Assert.Equal("TestPaisCCUpdated", items.Nome);
            Assert.Equal("CC", items.ZonaId);
            Assert.IsType <NoContentResult>(result);
        }
コード例 #2
0
        public async Task PutPais_NoContent()
        {
            var options = Options;

            var pais = await AdicionarPais(options);

            using (CompeticoesDbContext context = new CompeticoesDbContext(options))
            {
                pais.Nome = "Brazil";
                var controller = new PaisesController(context);

                var result = await controller.PutPais(pais.PaisId, pais);

                var noContentResult = Assert.IsType <NoContentResult>(result);
                Assert.Equal(204, noContentResult.StatusCode);
            }

            using (CompeticoesDbContext context = new CompeticoesDbContext(options))
            {
                var controller = new PaisesController(context);
                var result     = await controller.GetPais(pais.PaisId);

                var okResult   = Assert.IsType <OkObjectResult>(result);
                var paisResult = Assert.IsType <Pais>(okResult.Value);
                Assert.Equal(pais.PaisId, paisResult.PaisId);
                Assert.Equal(pais.Nome, paisResult.Nome);
            }
        }
コード例 #3
0
        public async Task PutPais_BadRequest_Id_Diferente()
        {
            var options = Options;

            using (CompeticoesDbContext context = new CompeticoesDbContext(options))
            {
                var controller = new PaisesController(context);

                var result = await controller.PutPais(Guid.NewGuid(), new Pais()
                {
                });

                var badResult = Assert.IsType <BadRequestResult>(result);
                Assert.Equal(400, badResult.StatusCode);
            }
        }
コード例 #4
0
        public async Task PutPais_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.PutPais(Guid.NewGuid(), 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]);
            }
        }
コード例 #5
0
        public async Task PutPais_ConcurrencyExceptions_NotExists_NotFound()
        {
            var options = Options;

            var pais = await AdicionarPais(options);

            using (CompeticoesDbContext context = new CompeticoesDbContext(options))
            {
                context.Paises.Remove(pais);
                await context.SaveChangesAsync();
            }

            using (CompeticoesDbContext context = new CompeticoesDbContext(options))
            {
                pais.Nome = "Brazil";
                var controller = new PaisesController(context);

                var result = await controller.PutPais(pais.PaisId, pais);

                Assert.IsType <NotFoundResult>(result);
            }
        }