public void ShouldInvalidateCadastrarUsuarioCommandWhenLoginIsEmpty() { var cadastrarUsuarioCommand = new CadastrarUsuarioCommand("teste", "FFF", 1, StatusDeCadastro.Normal, "", "teste123"); cadastrarUsuarioCommand.Validate(); var result = cadastrarUsuarioCommand.Notifications.ToList(); Assert.AreEqual(result[0].Message, "Login é obrigatório"); }
public void ShouldInvalidateCadastrarUsuarioCommandWhenInitialsIsLessThan2() { var cadastrarUsuarioCommand = new CadastrarUsuarioCommand("teste", "F", 1, StatusDeCadastro.Normal, "luism", "teste123"); cadastrarUsuarioCommand.Validate(); var result = cadastrarUsuarioCommand.Notifications.ToList(); Assert.AreEqual(result[0].Message, "Sigla deve ter no mínimo 2 caracteres."); }
public void ShouldInvalidateCadastrarUsuarioCommandWhenIdDepartamentIsZero() { var cadastrarUsuarioCommand = new CadastrarUsuarioCommand("teste", "FFF", 0, StatusDeCadastro.Normal, "", "teste123"); cadastrarUsuarioCommand.Validate(); var result = cadastrarUsuarioCommand.Notifications.ToList(); Assert.AreEqual(result[0].Message, "Obrigatório informar um setor com id válido"); }
public void ShouldInvalidateUpdateUserWhenInitialsIsEmpty() { var cadastrarUsuarioCommand = new CadastrarUsuarioCommand("teste", "", 1, StatusDeCadastro.Normal, "luism", "teste123"); cadastrarUsuarioCommand.Validate(); var result = cadastrarUsuarioCommand.Notifications.ToList(); Assert.AreEqual(result[0].Message, "Sigla é obrigatório"); }
public void ShouldInvalidateCadastrarUsuarioCommandWhenInitialsIsGreaterThan5() { var cadastrarUsuarioCommand = new CadastrarUsuarioCommand("teste", "FFFFFD", 1, StatusDeCadastro.Normal, "luism", "teste123"); cadastrarUsuarioCommand.Validate(); var result = cadastrarUsuarioCommand.Notifications.ToList(); Assert.AreEqual(result[0].Message, "Sigla não pode ser maior que 5 caracteres."); }
public void ShouldInvalidateCadastrarUsuarioCommandWhenNameIsLessThan3() { var cadastrarUsuarioCommand = new CadastrarUsuarioCommand("an", "tt", 1, StatusDeCadastro.Normal, "luism", "teste123"); cadastrarUsuarioCommand.Validate(); var result = cadastrarUsuarioCommand.Notifications.ToList(); Assert.AreEqual(result[0].Message, "Nome deve ter no mínimo 3 caracteres."); }
public void ShouldInvalidateCadastrarUsuarioCommandWhenNameIsGreaterThan30() { var cadastrarUsuarioCommand = new CadastrarUsuarioCommand("dhasghghghaghdgashdghgdhjghasgdjhagddhasghg", "teste", 1, StatusDeCadastro.Normal, "luism", "teste123"); cadastrarUsuarioCommand.Validate(); var result = cadastrarUsuarioCommand.Notifications.ToList(); Assert.AreEqual(result[0].Message, "Nome não pode ser maior que 30 caracteres."); }
public void ShouldInvalidateCadastrarUsuarioCommandWhenPasswordIsLessThan3() { var cadastrarUsuarioCommand = new CadastrarUsuarioCommand("teste", "FFF", 1, StatusDeCadastro.Normal, "luism", "df"); cadastrarUsuarioCommand.Validate(); var result = cadastrarUsuarioCommand.Notifications.ToList(); Assert.AreEqual(result[0].Message, "Senha deve ter no mínimo 3 caracteres."); }
public void ShouldInvalidateCadastrarUsuarioCommandWhenPasswordGreaterThan8() { var cadastrarUsuarioCommand = new CadastrarUsuarioCommand("teste", "FFF", 1, StatusDeCadastro.Normal, "luism", "teste123456"); cadastrarUsuarioCommand.Validate(); var result = cadastrarUsuarioCommand.Notifications.ToList(); Assert.AreEqual(result[0].Message, "Senha não pode ser maior que 8 caracteres."); }
public void ShouldInvalidateCadastrarUsuarioCommandWhenLoginIsGreaterThan20() { var cadastrarUsuarioCommand = new CadastrarUsuarioCommand("teste", "FFF", 1, StatusDeCadastro.Normal, "ssluismsfsffsfsfdsfsdffd", "teste123"); cadastrarUsuarioCommand.Validate(); var result = cadastrarUsuarioCommand.Notifications.ToList(); Assert.AreEqual(result[0].Message, "Login não pode ser maior que 20 caracteres."); }
public async ValueTask <ICommandResult> Handle(CadastrarUsuarioCommand command) { if (!command.Validate()) { AddNotifications(command); return(new CommandResult(false, base.Notifications)); } var entity = new Usuario(command.Nome, command.Login, command.Senha); if (entity.Login.IsValidCpf()) { var clienteResult = await _clienteRepository.GetClienteByCPF(entity.Login).ConfigureAwait(true); if (clienteResult == null) { var entityOperador = new Operador(command.Login, command.Nome, command.Senha); await _operadorRepository.Add(entityOperador); await _operadorRepository.SaveChanges().ConfigureAwait(true); } else { entity.VincularClienteAoUsuario(clienteResult.FirstOrDefault()); await _usuarioRepository.Add(entity); } } else { AddNotification("CPF", "CPF Invalido."); } var result = await _usuarioRepository.SaveChanges().ConfigureAwait(true); if (!result) { return(new CommandResult(false)); } return(new CommandResult(true)); }