public void DeveLancarExcecaoAoBuscarPorPessoaInexistente()
        {
            var pessoaRepository = Substitute.For <PessoaRepository>((ISession)null);

            pessoaRepository.PorId(4).Returns((Pessoa)null);
            var pessoaNegocio = new PessoaNegocio(pessoaRepository, Mapper.Instance);


            Assert.Throws <PessoaNaoEncontradaException>(() => { pessoaNegocio.PorId(4); });
        }
        // GET: api/Pessoas/5
        public IHttpActionResult Get(int id)
        {
            if (id <= 0)
            {
                return(BadRequest("Informe um id válido"));
            }

            try {
                return(Ok(_pessoaNegocio.PorId(id)));
            } catch (PessoaNaoEncontradaException) {
                return(NotFound());
            }
        }
        public void DeveTrazerPessoaPorId()
        {
            var pessoaRepository = Substitute.For <PessoaRepository>((ISession)null);

            pessoaRepository.PorId(3)
            .Returns(new Pessoa
            {
                Id   = 3,
                Nome = "Fulano"
            });
            var pessoaNegocio = new PessoaNegocio(pessoaRepository, Mapper.Instance);
            var retorno       = pessoaNegocio.PorId(3);

            Assert.That(retorno, Is.Not.Null);
            Assert.That(retorno.Id, Is.EqualTo(3));
        }