validate-docbr icon indicating copy to clipboard operation
validate-docbr copied to clipboard

Sugestão: Mudanças nos métodos validate e mask

Open Eduardo-RFarias opened this issue 3 years ago • 2 comments

Como discutido no pr #46 fiz algumas modificações na classe BaseDoc e nos métodos validate e mask da classe Cpf. Gostaria que o código fosse revisado e, se estiver tudo certo, gostaria também de receber um feedback para que eu possa terminar de implementar nas outras classes.

Quero muito contribuir com essa biblioteca que eu achei bem útil.🥇 Muito obrigado desde já 😃

Mudanças

Commit

  • Foi adicionado um novo método e um construtor na classe BaseDoc
  • O construtor da classe CPF agora define um regex_pattern que servirá para validar o cpf
  • O método validate de CPF agora usa "check_formating()" em vez de "_validate_input()". (Houve uma pequena melhora no tempo de execução desse método)
  • Um novo docstring foi criado para o método mask.

image

Eduardo-RFarias avatar Dec 23 '21 23:12 Eduardo-RFarias

Sugestões gerais:

  • Evite usar o f para formatação, pois quebra a compatibilidade do pacote com versões do Python menores que 3.6 (#24);
  • Utilize nomes totalmente descritivos para as suas variáveis;
  • Melhor que == None ou != None é, respectivamente, is None e is not None.

O construtor da classe CPF agora define um regex_pattern que servirá para validar o cpf

Faltou colocar o type hint de custom_regex_pattern. Creio que custom_regex_pattern or r"""...""" seria melhor se fosse um if. Não precisa comentar as partes do regex de CPF.

alvarofpp avatar Dec 27 '21 16:12 alvarofpp

Fiz as modificações:

Commit

  • Revisei também uma validação na classe BaseDoc pois parece que os argumentos de um construtor no python são opcionais. Usei um try except, dentro do método check_formatting, para garantir que o programador tenha passado um regex válido ao construtor da classe BaseDoc.

Eduardo-RFarias avatar Dec 28 '21 00:12 Eduardo-RFarias