Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Reclamação] Caso 2 faltando informações

No caso 2 da atividade está pedindo para checar um erro ao tentar cadastrar um email que já existe no banco de dados, porém, não há nenhum erro sendo disparado para caso haja um email repetido no BD, uma sugestão seria para adicionar um: const existeEmail = await Usuario.pegarPeloEmail(data.email); if (existeEmail) { throw new Error('O email já esta cadastrado'); }

no método cadastrarUsuario() do authServce.

1 resposta
solução!

Olá, estudante. Tudo bem?

A sua sugestão de adicionar uma verificação no método cadastrarUsuario() do authService é uma excelente abordagem para resolver essa questão.

A implementação que você sugeriu pode ser algo assim:

async function cadastrarUsuario(data) {
  const existeEmail = await Usuario.pegarPeloEmail(data.email);
  if (existeEmail) {
    throw new Error('O email já está cadastrado');
  }
  // Continue com o processo de cadastro do usuário...
}

Com essa verificação, você garante que, caso o e-mail já esteja cadastrado, uma exceção será lançada, evitando que o mesmo e-mail seja cadastrado novamente. Isso não só resolve o problema do cenário 2, mas também melhora a integridade dos dados na sua aplicação.

Além disso, ao implementar essa lógica, você pode criar um teste unitário para garantir que essa funcionalidade esteja funcionando conforme o esperado. Por exemplo, você pode simular a tentativa de cadastro de um e-mail já existente e verificar se a exceção correta é lançada.

A Alura é uma comunidade, toda sugestão é bem-vinda. Muito obrigado.

Espero ter ajudado e bons estudos.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.Bons Estudos!