예제 #1
0
 public PodeAcessarDocumentoAttribute()
 {
     this.sessaoDoUsuario = InversionControl.Current.Resolve<ISessaoDoUsuario>();
     this.acessoDocumentoRepositorio = InversionControl.Current.Resolve<IAcessoDocumentoRepositorio>();
     this.documentoRepositorio = InversionControl.Current.Resolve<IDocumentoRepositorio>();
     this.autorizaVisualizacaoDocumento = InversionControl.Current.Resolve<AutorizaVisualizacaoDocumento>();
 }
예제 #2
0
 public SearchService(
     ISearchEngine searchEngine, 
     ISessaoDoUsuario userSession,
     AutorizaVisualizacaoDocumento contentAuthorizator,
     IDocumentoRepositorio contentRepository,
     IConfiguracoesDaAplicacao configuracoesDaAplicacao)
 {
     this.searchEngine = searchEngine;
     this.sessaoDoUsuario = userSession;
     this.autorizaVisualizacaoDocumento = contentAuthorizator;
     this.configuracoesDaAplicacao = configuracoesDaAplicacao;
     this.documentoRepositorio = contentRepository;
 }
        public void ProprietarioDoDocumentoTemAcessoAoDocumento()
        {
            var usuarioRepositorio = MockRepository.GenerateStub<ISessaoDoUsuario>();
            var acessoDocumentoRepositorio = MockRepository.GenerateStub<IAcessoDocumentoRepositorio>();
            var documentoRepositorio = MockRepository.GenerateStub<IDocumentoRepositorio>();

            var autorizacao = new AutorizaVisualizacaoDocumento(
                usuarioRepositorio,
                acessoDocumentoRepositorio,
                documentoRepositorio);

            usuarioRepositorio.Stub(x => x.UsuarioAtual).Return(tiago);

            var acessos = new List<AcessoDocumento>();

            var documento = new Documento
            {
                Usuario = tiago
            };

            var podeAcessar = autorizacao.PossuiAcesso(acessos, documento);

            Assert.AreEqual(podeAcessar, true);
        }