Melhorar tratamento de erros no le-lab
- Analisar o código do le-lab verificando possíveis erros, o que eles efetariam e trata-los, caso necessário.
- Algumas funções tratam exception e retornam booleanos, porém não é verificado no nível acima e o status de erro não é propagado
- Me parece uma boa prática não usar booleano em caso de erro, mas sim Exceptions, pois elas se propagam nos diversos níveis da pilha, não precisando cada nível fazer isso
- Um caso onde isso acontece é:
Arquivo: le-lab
arguments = parser.parse_args()
if arguments.services:
if services.parse_service_arguments(arguments):
exit(0)
else:
exit(1)
if arguments.create:
if parse_creation_arguments(arguments):
exit()
else:
exit(1)
Se você descer na pilha de chamada das funções services.parse_service_arguments(arguments)
e parse_creation_arguments(arguments)
, perceberá que os erro não chega no topo