codeedu-plataforma-desafios icon indicating copy to clipboard operation
codeedu-plataforma-desafios copied to clipboard

Feature/check password length

Open duanyrf opened this issue 4 years ago • 7 comments

Esta branch adiciona a funcionalidade de checagem de comprimento mínimo e máximo da senha informada pelo usuário. Referente à Issue #5 .

duanyrf avatar Apr 12 '20 04:04 duanyrf

@wesleywillians não compreendo muito bem de testes em Golang e GitHub Actions. Esta falha que está acontecendo é por qual motivo? Executei apenas go test domain/user_test.go e os testes foram bem sucedidos. O erro que vi no GitHub Actions é referente à acesso de BD. Você pode me confirmar isso? Abraços.

duanyrf avatar Apr 12 '20 15:04 duanyrf

Olá @duanyrf perceba que os testes não passaram. Que tal usar o govalidator para fazer a verificação. Já estamos usando uma biblioteca, acho que vale mais a pena do que fazer a validação na mão. Da uma olhada na doc, pls.

wesleywillians avatar Apr 12 '20 20:04 wesleywillians

Tentei utilizar a função stringlength(min|Max) do govalidator, mas aparentemente tem um bug nessa função. Alguém poderia testar com ela, para verificar se é isso mesmo?

duanyrf avatar Apr 12 '20 22:04 duanyrf

@wesleywillians e @argentinaluiz Agora entendi o porquê da validação do comprimento da senha não estar funcionando a contento. O motivo é que quando a função validate do Go é chamada, o atributo password já tem sido alterado pelo módulo bcrypt, que transforma qualquer comprimento de string em 60 caracteres. Alguma sugestão para realizar essa checagem de tamanho do password antes dele passar pelo bcrypt?

duanyrf avatar Apr 22 '20 14:04 duanyrf

Execute primeiro a validação e depois dela, gere o hash da senha. O que acha?

Em qua., 22 de abr. de 2020 às 10:03, Duany Dreyton Bezerra Sousa < [email protected]> escreveu:

@wesleywillians https://github.com/wesleywillians e @argentinaluiz https://github.com/argentinaluiz Agora entendi o porquê da validação do comprimento da senha não estar funcionando a contento. O motivo é que quando a função validate do Go é chamada, o atributo password já tem sido alterado pelo módulo bcrypt, que transforma qualquer comprimento de string em 60 caracteres. Alguma sugestão para realizar essa checagem de tamanho do password antes dele passar pelo bcrypt?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/codeedu/codeedu-plataforma-desafios/pull/11#issuecomment-617798385, or unsubscribe https://github.com/notifications/unsubscribe-auth/AADBO4UVGREN77UIH6QVDDTRN32JLANCNFSM4MGIUCOA .

wesleywillians avatar Apr 22 '20 14:04 wesleywillians

Foi exatamente o que fiz. Estou agora enrolado só para fazer o Pull Request rsrsrs

duanyrf avatar Apr 22 '20 14:04 duanyrf

@wesleywillians Sempre que executo go test ./... em minha máquina dá esse mesmo erro que aparece aqui nas Actions:

--- FAIL: TestLogin_Auth (0.00s) panic: reflect: call of reflect.Value.MethodByName on zero Value [recovered] panic: reflect: call of reflect.Value.MethodByName on zero Value [recovered] panic: reflect: call of reflect.Value.MethodByName on zero Value

Há também uma referência para esse diretório:

FAIL github.com/codeedu/codeedu-plataforma-desafios/application/usecases 0.028s

Executando o teste apenas sobre o arquivo user_test.go a validação do comprimento da senha acontece de forma correta. Você pode me dar uma luz sobre o que seria isso?

duanyrf avatar Apr 22 '20 15:04 duanyrf

Fechada por estar há muito tempo sem interação.

duanyrf avatar Apr 21 '24 19:04 duanyrf