Пример #1
0
        public void CRUD()
        {
            var livro = new Livraria.Livro.Model
            {
                Nome  = "Memórias Póstumas de Brás Cubas",
                ISBN  = "9788538076902",
                Autor = "Machado de Assis",
                CapaImagemConteudo = new byte[] { },
                Preco          = 16.52M,
                PublicacaoData = new System.DateTime(1882, 01, 01)
            };

            Assert.IsTrue(Livraria.WebApi.Controllers.Livro.Post.Service.Call(livro).Result.mensagem == null);

            Assert.IsTrue(Livraria.WebApi.Controllers.Livro.Get.Service.Call(new Livraria.WebApi.Controllers.Livro.Get.Model()).Result.resultado.Any(), "Created & Read");

            livro.Preco = 20.00M;

            Assert.IsTrue(Livraria.WebApi.Controllers.Livro.Put.Service.Call(livro).Result.mensagem == null);

            Assert.IsTrue(Livraria.WebApi.Controllers.Livro.Get.Service.Call(new Livraria.WebApi.Controllers.Livro.Get.Model()).Result.resultado.SingleOrDefault().Preco == 20.00M, "Update");

            Assert.IsTrue(Livraria.WebApi.Controllers.Livro.Delete.Service.Call(livro).Result.mensagem == null);

            Assert.IsTrue(Livraria.WebApi.Controllers.Livro.Get.Service.Call(new Livraria.WebApi.Controllers.Livro.Get.Model()).Result.resultado.SingleOrDefault() == null, "Delete");
        }
Пример #2
0
        public void RestricaoCadastroDoisLivrosComMesmoISBNAtualizacaoInexistenteExclusaoInexistente()
        {
            var livro = new Livraria.Livro.Model
            {
                Nome  = "Memórias Póstumas de Brás Cubas",
                ISBN  = "9788538076902",
                Autor = "Machado de Assis",
                CapaImagemConteudo = new byte[] { },
                Preco          = 16.52M,
                PublicacaoData = new System.DateTime(1882, 01, 01)
            };

            var msg = Livraria.WebApi.Controllers.Livro.Put.Service.Call(livro).Result.mensagem;

            Assert.IsTrue(msg.Contains("9788538076902"));

            Livraria.WebApi.Controllers.Livro.Post.Service.Call(livro).Wait();
            msg = Livraria.WebApi.Controllers.Livro.Post.Service.Call(livro).Result.mensagem;

            Assert.IsTrue(msg.Contains("9788538076902"));

            Livraria.WebApi.Controllers.Livro.Delete.Service.Call(livro).Wait();
            msg = Livraria.WebApi.Controllers.Livro.Delete.Service.Call(livro).Result.mensagem;
            Assert.IsTrue(msg.Contains("9788538076902"));
        }
Пример #3
0
        public static async Task <Envelope.Model> Call(Livraria.Livro.Model livro)
        {
            try
            {
                await Livraria.Livro.Update.Service.Call(livro);

                return(Envelope.Service.Create());
            }
            catch (Exception.Model ex)
            {
                return(Envelope.Service.Create(exception: ex));
            }
        }
Пример #4
0
        public void CRUD()
        {
            var livro = new Livraria.Livro.Model
            {
                Nome  = "Memórias Póstumas de Brás Cubas",
                ISBN  = "9788538076902",
                Autor = "Machado de Assis",
                CapaImagemConteudo = new byte[] { },
                Preco          = 16.52M,
                PublicacaoData = new System.DateTime(1882, 01, 01)
            };

            Livraria.Livro.Create.Service.Call(livro).Wait();

            Assert.IsTrue(
                Livraria.Livro.Read.Service.Call(
                    function: f => f.Where(Livraria.Livro.Expression.ISBNHas(livro)),
                    include: new[] { Livraria.Livro.Expression.IncludeAutor }
                    )
                .Any(),
                "Created & Read");

            livro.Preco = 20.00M;

            Livraria.Livro.Update.Service.Call(livro);

            Assert.IsTrue(
                Livraria.Livro.Read.Service.Call(
                    function: f => f.Where(Livraria.Livro.Expression.ISBNHas(livro)).Where(w => w.Preco == 20.00M),
                    include: new[] { Livraria.Livro.Expression.IncludeAutor }
                    )
                .Any(),
                "Update");

            Livraria.Livro.Delete.Service.Call(livro);

            Assert.IsFalse(
                Livraria.Livro.Read.Service.Call(
                    function: f => f.Where(Livraria.Livro.Expression.ISBNHas(livro)),
                    include: new[] { Livraria.Livro.Expression.IncludeAutor }
                    )
                .Any(),
                "Delete");
        }
Пример #5
0
        public void RestricaoCadastroDoisLivrosComMesmoISBNAtualizacaoInexistenteExclusaoInexistente()
        {
            var livro = new Livraria.Livro.Model
            {
                Nome  = "Memórias Póstumas de Brás Cubas",
                ISBN  = "9788538076902",
                Autor = "Machado de Assis",
                CapaImagemConteudo = new byte[] { },
                Preco          = 16.52M,
                PublicacaoData = new System.DateTime(1882, 01, 01)
            };

            Assert.ThrowsExceptionAsync <Exception.Model>(() => Livraria.Livro.Update.Service.Call(livro)).Wait();

            Livraria.WebApi.Controllers.Livro.Post.Service.Call(livro).Wait();
            Assert.ThrowsExceptionAsync <Exception.Model>(() => Livraria.Livro.Create.Service.Call(livro)).Wait();

            Livraria.WebApi.Controllers.Livro.Delete.Service.Call(livro).Wait();
            Assert.ThrowsExceptionAsync <Exception.Model>(() => Livraria.Livro.Delete.Service.Call(livro)).Wait();
        }
Пример #6
0
 public async Task <Envelope.Model> Delete([FromBody] Livraria.Livro.Model model) =>
 await Livro.Delete.Service.Call(model);
Пример #7
0
 public async Task <Envelope.Model> Put([FromBody] Livraria.Livro.Model model) =>
 await Livro.Put.Service.Call(model);