public async Task DeveCadastrarUsuarioValido() { var nome = Guid.NewGuid().ToString(); var email = $"{DateTime.Now:yyyyMMddhhmmss}@test.io"; var senha = Guid.NewGuid().ToString("N"); var criarUsuarioCommand = new CriarUsuarioCommand(nome, email, senha); using (var client = CreateClient()) { var response = await client.PostAsJsonAsync(_actionName, criarUsuarioCommand); Assert.IsTrue(response.StatusCode == HttpStatusCode.OK); var usuario = await response.Content.ReadAsAsync <UsuarioOutputCommand>(); Assert.IsNotNull(usuario); Assert.AreNotEqual(Guid.Empty, usuario.Id); Assert.AreEqual(nome, usuario.Nome); Assert.AreEqual(email, usuario.Email); Assert.AreEqual("***", usuario.Senha); Assert.IsNotNull(usuario.DataUltimoLogin); Assert.IsNotNull(usuario.DataUpdate); Assert.IsNotNull(usuario.Token); Assert.AreEqual(0, usuario.Telefones.Count); } }
public async Task DeveRecusarEmailJaExistente() { var nome = Guid.NewGuid().ToString(); var email = $"{Guid.NewGuid():N}@test.io"; var senha = Guid.NewGuid().ToString("N"); var criarUsuarioCommand = new CriarUsuarioCommand(nome, email, senha); using (var client = CreateClient()) { var response = await client.PostAsJsonAsync(_actionName, criarUsuarioCommand); Assert.IsTrue(response.StatusCode == HttpStatusCode.OK); var usuario = await response.Content.ReadAsAsync <UsuarioOutputCommand>(); Assert.IsNotNull(usuario); } using (var client = CreateClient()) { var response = await client.PostAsJsonAsync(_actionName, criarUsuarioCommand); Assert.IsTrue(response.StatusCode == HttpStatusCode.Unauthorized); var error = await response.Content.ReadAsAsync <ErrorResultModel>(); Assert.IsNotNull(error); Assert.AreEqual((int)HttpStatusCode.Unauthorized, error.StatusCode); Assert.AreEqual(Messages.EmailExistente, error.Mensagem); } }
public void DeveRetornarErroSeDadosInvalidos() { var command = new CriarUsuarioCommand(); command.Validar(); Assert.True(command.Valid, "Os Dados estão preenchidos corretamente"); }
public void DeveRetornarErroSeDadosValidos() { var command = new CriarUsuarioCommand("Erick", "*****@*****.**", "123456", "", Comum.Enum.EnTipoUsuario.comun); command.Validar(); Assert.True(command.Valid, "Os Dados estão preenchidos corretamente"); }
public GerencCommandResult SignUp( CriarUsuarioCommand command, [FromServices] CriarUsuarioHandle handle ) { return((GerencCommandResult)handle.Handle(command)); }
public void DeveCriarUsuarioComDataDeCriacaoETelefones() { var criarUsuarioCommand = new CriarUsuarioCommand(NOME, EMAIL, SENHA); criarUsuarioCommand.Telefones.Add(new CriarTelefoneCommand(DDD1, TELEFONE1)); criarUsuarioCommand.Telefones.Add(new CriarTelefoneCommand($"({DDD2})", TELEFONE2)); var usuario = new UsuarioMapper().MapFrom(criarUsuarioCommand); Assert.IsNotNull(usuario); Assert.AreNotEqual(Guid.Empty, usuario.Id); Assert.IsNotNull(usuario.Telefones); Assert.IsTrue(usuario.Telefones.Any()); Assert.AreEqual(2, usuario.Telefones.Count); Assert.AreEqual(NOME, usuario.Nome); Assert.AreEqual(EMAIL, usuario.Email); Assert.IsTrue(new PasswordEncryptionService().ComparePasswords(SENHA, usuario.Senha)); Assert.AreEqual(usuario.Telefones.First().Ddd, DDD1); Assert.AreEqual(usuario.Telefones.First().Numero, TELEFONE1); Assert.AreEqual(usuario.Telefones.Last().Ddd, DDD2.OnlyNumbers()); Assert.AreEqual(usuario.Telefones.Last().Numero, TELEFONE2.OnlyNumbers()); }
public Usuario MapFrom(CriarUsuarioCommand command) { var usuario = new Usuario(command.Nome, command.Email, command.Senha, DateTime.Now); command.Telefones.ForEach(telefone => usuario.Telefones.Add(new Telefone(usuario.Id, telefone.Ddd, telefone.Numero))); return(usuario); }
public void DeveRetornarErroSeDadosInvalidos() { var command = new CriarUsuarioCommand(); command.Validar(); Assert.False(command.Valid, "Usuário é válido"); }
public void DeveRetornarErroCasoOsDadosDoHandleSejamInvalidos() { var command = new CriarUsuarioCommand(); var handle = new CriarUsuarioHandle(new FakeUsuarioRepositorio()); var resultado = (GerencCommandResult)handle.Handle(command); Assert.False(resultado.Sucesso, "Usuario válido"); }
public void DeveRetornarSucessoCasoOsDadosDoHandleSejamValidos() { var command = new CriarUsuarioCommand("Erick", "*****@*****.**", "123456", "", Comum.Enum.EnTipoUsuario.comun); var handle = new CriarUsuarioHandle(new FakeUsuarioRepositorio()); var resultado = (GerencCommandResult)handle.Handle(command); Assert.False(resultado.Sucesso, "Usuario válido"); }
public void CriarUsuario(CriarUsuarioCommand command) { ValidacaoLogica.IsTrue <ValidacaoException>(command is null, "Comando não pode ser nulo"); var usuario = new Usuario(command); usuariosRepository.Adicionar(usuario); unitOfWork.SaveChanges(); }
public void SucessoCasoDadosCommandValidosComTelefone() { var _command = new CriarUsuarioCommand("Nome command", "*****@*****.**", "123456", "11962553590", EnTipoPerfil.Comum); //Validando os campos informados _command.Validar(); //Espera sucesso ao inserir um novo usuário Assert.True(_command.Valid, "Os dados estão incorretos"); }
public async Task <ActionResult> Post([FromBody] CriarUsuarioCommand command) { var response = await EventBus.SendCommand(command); if (response.HasFails) { return(BadRequest(response.Fails)); } return(Ok()); }
public void ErroCasoDadosCommandInvalidos() { var _command = new CriarUsuarioCommand("", "", "", "", EnTipoPerfil.Comum); //Validando os campos informados _command.Validar(); //Espera erro ao inserir um novo command de usuário //devido a falta de um resultado para o parametro 'nome', 'email', 'senha', 'telefone' Assert.True(_command.Invalid, "Os dados estão corretos"); }
public void ErroCasoEmailCommandInvalido() { var _command = new CriarUsuarioCommand("Nome command", "", "123456", "11962553590", EnTipoPerfil.Comum); //Validando os campos informados _command.Validar(); //Espera erro ao inserir um novo command de usuário //devido a falta de um resultado para o parametro 'email' Assert.True(_command.Invalid, "O email de usuário está correto"); }
public void ErroCasoSenhaCommandInvalida() { var _command = new CriarUsuarioCommand("Nome command", "*****@*****.**", "", "1162553590", EnTipoPerfil.Comum); //Validando os campos informados _command.Validar(); //Espera erro ao inserir um novo command de usuário //devido a falta de um resultado para o parametro 'senha' Assert.True(_command.Invalid, "A senha informada está correta"); }
protected Usuario(CriarUsuarioCommand cmd) : base(cmd.Id) { Login = cmd.Login; Senha = cmd.Senha; AddEvent(new UsuarioCriadoEvent() { AggregateRootId = Id, UsuarioId = cmd.Id }); }
public async Task Usuario_CriarUsuarioEmailInvalido_Retornar400BadRequest() { // Arrange var criarUsuarioCommand = new CriarUsuarioCommand("", "Maria", -23.5950753, -46.645421, "Admin123@"); // Act var postResponse = await _testsFixture.Client.PostAsJsonAsync("/api/usuarios/registrar", criarUsuarioCommand); // Assert Assert.Equal(HttpStatusCode.BadRequest, postResponse.StatusCode); }
public void Dado_um_usuario_com_nome_invalido() { var command = new CriarUsuarioCommand("Ful", "*****@*****.**", "123456", "candidato"); command.Validate(); Assert.IsTrue(command.Invalid); }
public async Task Usuario_CriarUsuario_Retornar200OKSucesso() { // Arrange var criarUsuarioCommand = new CriarUsuarioCommand("*****@*****.**", "Maria", -23.5950753, -46.645421, "Admin123@"); // Act var postResponse = await _testsFixture.Client.PostAsJsonAsync("/api/usuarios/registrar", criarUsuarioCommand); // Assert postResponse.EnsureSuccessStatusCode(); }
public void Dado_um_usuario_com_senha_invalida() { var command = new CriarUsuarioCommand("Fulano de tal", "*****@*****.**", "123", "candidato"); command.Validate(); Assert.IsTrue(command.Invalid); }
public void Dado_um_usuario_com_role_invalido() { var command = new CriarUsuarioCommand("Fulano de tal", "*****@*****.**", "123456", "gerente"); command.Validate(); Assert.IsTrue(command.Invalid); }
public void DeveRetornarErroSeOsDadosDoHandlerForemValidos() { //criar um command var command = new CriarUsuarioCommand("Maria Eduarda", "*****@*****.**", "1234567", "", EnTipoUsuario.Comum); //criar um handle var handle = new CriarUsuarioHandle(new FakeUsuarioRepositorio()); //pega o resultado var resultado = (GenericCommandResult)handle.Handle(command); //valida a condição Assert.True(resultado.Sucesso, "Usuário é válido"); }
public void DeveRetornarErroCasoOsDadosDoHandleSejamInvalidos() { // criar um command var command = new CriarUsuarioCommand(); // criar um handle var handle = new CriarUsuarioHandle(new FakeUsuarioRepositorio()); //Moq ou FakeRepository //Pega o resultado var resultado = (GenericCommandResult)handle.Handle(command); //Validar Condicao Assert.False(resultado.Sucesso, "Usuario válido"); }
public void DeveRetornarSucessoCasoOsDadosDoHandleSejamValidos() { // criar um command var command = new CriarUsuarioCommand("Cauê", "*****@*****.**", "1234567", "", Comum.Enum.EnTipoUsuario.Comum); // criar um handle var handle = new CriarUsuarioHandle(new FakeUsuarioRepositorio()); //Moq //Pega o resultado var resultado = (GenericCommandResult)handle.Handle(command); //Validar Condicao Assert.True(resultado.Sucesso, "Usuario inválido"); }
public void DeveRetornarErroSeDadosValidos() { var command = new CriarUsuarioCommand("Maria Eduarda", "*****@*****.**", "123456", "", EnTipoUsuario.Comum); command.Validar(); //Se o meu objeto commmand passar pelas validações //Invalid = false - se passar pelas validações e der false significa q ele n tá inválido //Se não, Invalid = true Assert.True(command.Valid, "Usuário é inválido"); }
public IHttpActionResult CriarUsuario([FromBody] UsuarioViewModel viewModel) { var cmd = new CriarUsuarioCommand(); cmd.Id = Guid.NewGuid(); cmd.Login = viewModel.Login; cmd.Senha = viewModel.Senha; _commandSender.Send(cmd, false); return(Ok(SuccessResponse.Instance)); }
public Usuario(CriarUsuarioCommand command) { ValidarCampos(command.Nome, command.Login, command.Senha); ValidacaoLogica.IsTrue <ValidacaoException>(command.Cpf <= 0, "Cpf deve ser maior que zero."); ValidacaoLogica.IsTrue <ValidacaoException>(command.Cpf.ToString().Length != 11, "Cpf inválido. Deve conter 11 dígitos."); Nome = command.Nome; Cpf = command.Cpf; Login = command.Login; Senha = command.Senha; }
public void DeveRetornarSucessoSeDadosValidosConstrutor() { var command = new CriarUsuarioCommand("Fernando", "*****@*****.**", "1234567", "", Comum.Enum.EnTipoUsuario.Comum ); command.Validar(); Assert.True(command.Valid, "Os dados estão preenchidos corretamente"); }
public void Criar_um_usuario_com_sucesso() { var cmd = new CriarUsuarioCommand("Fulano de tal", "*****@*****.**", "123456", "candidato" ); var hdl = new CriarUsuarioHandler(_repositorio.Object); var result = (ResponseCommandResult)hdl.Handle(cmd); Assert.IsTrue(result.Valid, result.Message); }