public PessoaServicoDeAplicacao(IPerfilRepositorio perfilRepositorio, IUnitOfWork unitOfWork, IFuncionarioRepositorio funcionarioRepositorio,
     IClienteRepositorio clienteRepositorio, ICargoRepositorio cargoRepositorio, IDepartamentoRepositorio departamentoRepositorio, IPessoaRepositorio pessoaRepositorio,
     FuncionarioServico funcionarioServico, ClienteServico clienteServico, IProgramaRepositorio programaRepositorio,
     ITipoDeCrmRepositorio tipoDeCrmRepositorio, RepositorioDeArquivos repositorioDeArquivos)
 {
     _perfilRepositorio = perfilRepositorio;
     _unitOfWork = unitOfWork;
     _funcionarioRepositorio = funcionarioRepositorio;
     _clienteRepositorio = clienteRepositorio;
     _cargoRepositorio = cargoRepositorio;
     _departamentoRepositorio = departamentoRepositorio;
     _pessoaRepositorio = pessoaRepositorio;
     _funcionarioServico = funcionarioServico;
     _clienteServico = clienteServico;
     _programaRepositorio = programaRepositorio;
     _tipoDeCrmRepositorio = tipoDeCrmRepositorio;
     _repositorioDeArquivos = repositorioDeArquivos;
 }
        public void UmFuncionariDevePertencerAoGrupoClinicas()
        {
            var grupoIntegra = GrupoBuilder.DadoUmGrupo().ComCodigo(1).Build();
            _perfil = PerfilBuilder.DadoUmPerfil().DoGrupo(grupoIntegra).Build();

            var pessoaRepositorioMock = new Mock<IFuncionarioRepositorio>();
            var grupoRepositorioMock = new Mock<IGrupoRepositorio>();
            grupoRepositorioMock.Setup(it => it.ObterGrupoIntegra()).Returns(grupoIntegra);

            var usuario = UsuarioBuilder.DadoUmUsuario().ComOPerfil(_perfil).Build();

            var servicoPessoa = new FuncionarioServico(pessoaRepositorioMock.Object, grupoRepositorioMock.Object);

            var pessoa = servicoPessoa.AdicionarUmNovoFuncionario(_nome, _telefone, usuario, _departamento, _cargo, _programa, "");

            Assert.AreSame(pessoa.Departamento, _departamento);
        }