public void ValidaAcesso_TestaSucessoSemSenha_AcessoLiberado() { var dataTolerancia = Utilidades.DataToleranciaTestes(); if (DateTime.Now <= dataTolerancia) { Assert.Inconclusive(); } var mockCliente = Substitute.For <IClienteEntity>(); var mockFuncionario = Substitute.For <IFuncionarioData>(); var mockAluno = Substitute.For <IAlunoEntity>(); var mockPerfil = Substitute.For <IPerfilAlunoData>(); var mockVersao = Substitute.For <IVersaoAppPermissaoEntityData>(); var register = "12345678909"; var nome = "Fulano Tal"; var matricula = -1; var estado = "SP"; var mockMenu = Substitute.For <IMenuData>(); var mockPessoa = Substitute.For <IDataAccess <Pessoa> >(); var mockBlacklist = Substitute.For <IBlackListData>(); var menuEntityTestData = new MenuEntityTestData(); var pessoasBlacklistMocked = menuEntityTestData.ObterListaDeAlunosBlackList(); var pessoasMocked = menuEntityTestData.ObterListaDeAlunos(); mockPessoa.GetByFilters(Arg.Any <Pessoa>()).Returns(pessoasMocked); mockBlacklist.GetAll().Returns(pessoasBlacklistMocked); var listMenu = menuEntityTestData.ObtemListaMenusMockados(); var listPermissaoRegra = menuEntityTestData.ObtemPermissaoRegraMockados(); mockMenu.GetAll(Arg.Any <int>(), Arg.Any <String>()).Returns(listMenu); mockMenu.GetAlunoPermissoesMenu(Arg.Any <List <Menu> >(), Arg.Any <int>(), Arg.Any <int>(), Arg.Any <DateTime?>(), Arg.Any <int>()).Returns(listPermissaoRegra); mockAluno.GetAlunoEstado(matricula).Returns(estado); mockPerfil.IsAlunoExtensivoAsync(register).Returns(Task.Factory.StartNew(() => true)); mockCliente.GetPersonType(register).Returns(Pessoa.EnumTipoPessoa.Cliente); mockAluno.GetPermissao(register, (int)Aplicacoes.Recursos).Returns(new PermissaoInadimplencia { PermiteAcesso = 1 }); mockCliente.GetDadosBasicos(matricula).Returns(new Cliente { Register = register }); mockCliente.UserGolden(register, Aplicacoes.Recursos).Returns(0); mockCliente.GetByFilters(Arg.Any <Cliente>(), Arg.Any <int>(), Arg.Any <Aplicacoes>()) .Returns(new Clientes { new Cliente { Register = register, RetornoStatus = Cliente.StatusRetorno.Sucesso, ID = matricula, Nome = nome } }); mockCliente.GetDadosBasicos(register).Returns(new Cliente { ID = matricula, Register = register }); var business = new LoginBusiness(mockCliente, mockAluno, mockFuncionario, mockPerfil, mockVersao, mockMenu, mockPessoa, mockBlacklist); var result = business.ValidaAcesso(matricula, Aplicacoes.Recursos, "1.0.1"); Assert.AreEqual(ValidacaoLogin.Sucesso, result.Validacao); Assert.AreEqual(nome, result.Perfil.Nome); Assert.AreEqual(estado, result.Perfil.Estado); Assert.AreEqual(matricula, result.Perfil.Matricula); }
public void Login_AcessoGolden_SucessoAcessoGolden() { var dataTolerancia = Utilidades.DataToleranciaTestes(); if (DateTime.Now <= dataTolerancia) { Assert.Inconclusive(); } var mockCliente = Substitute.For <IClienteEntity>(); var mockFuncionario = Substitute.For <IFuncionarioData>(); var mockAluno = Substitute.For <IAlunoEntity>(); var mockPerfil = Substitute.For <IPerfilAlunoData>(); var mockVersao = Substitute.For <IVersaoAppPermissaoEntityData>(); var register = "12345678909"; var nome = "Godzilla Zilla"; var matricula = 123231; var senha = "senhaGolden"; var mensagemInadimplencia = "Mensagem de inadimplencia para: " + nome; var mockMenu = Substitute.For <IMenuData>(); var mockPessoa = Substitute.For <IDataAccess <Pessoa> >(); var mockBlacklist = Substitute.For <IBlackListData>(); var menuEntityTestData = new MenuEntityTestData(); var pessoasBlacklistMocked = menuEntityTestData.ObterListaDeAlunosBlackList(); var pessoasMocked = menuEntityTestData.ObterListaDeAlunos(); mockPessoa.GetByFilters(Arg.Any <Pessoa>()).Returns(pessoasMocked); mockBlacklist.GetAll().Returns(pessoasBlacklistMocked); var listMenu = menuEntityTestData.ObtemListaMenusMockados(); var listPermissaoRegra = menuEntityTestData.ObtemPermissaoRegraMockados(); mockMenu.GetAll((int)Aplicacoes.Recursos, "0.0.0").Returns(listMenu); mockMenu.GetAlunoPermissoesMenu(Arg.Any <List <Menu> >(), Arg.Any <int>(), Arg.Any <int>(), Arg.Any <DateTime?>(), Arg.Any <int>()).Returns(listPermissaoRegra); mockCliente.GetPersonType(register).Returns(Pessoa.EnumTipoPessoa.Cliente); mockAluno.GetPermissao(register, (int)Aplicacoes.Recursos).Returns(new PermissaoInadimplencia { PermiteAcesso = 1 }); mockCliente.UserGolden(register, Aplicacoes.Recursos).Returns(1); mockCliente.ObterSenhaGolden().Returns(senha); mockCliente.GetByFilters(Arg.Any <Cliente>(), Arg.Any <int>(), Arg.Any <Aplicacoes>()) .Returns(new Clientes { new Cliente { Register = register, RetornoStatus = Cliente.StatusRetorno.Sucesso, Nome = nome, Senha = Utilidades.EncryptionSHA1("senhaCliente"), ID = matricula } }); mockCliente.GetDadosBasicos(register).Returns(new Cliente { ID = matricula, Register = register }); var business = new LoginBusiness(mockCliente, mockAluno, mockFuncionario, mockPerfil, mockVersao, mockMenu, mockPessoa, mockBlacklist); var result = business.Login(register, senha, Aplicacoes.Recursos, "0.0.0"); Assert.AreEqual(ValidacaoLogin.Sucesso, result.Validacao); Assert.AreEqual(matricula, result.Perfil.Matricula); }