Esse projeto faz parte do processo seletivo para a vaga de backend no Gympass
O problema consiste em ler os dados de uma corrida de kart e extrair os resultados da mesma.
Esses dados estão contidos em um arquivo de log onde cada linha representa uma volta de um piloto.
Ao final é preciso mostrar as seguintes informações sobre cada piloto:
- Posição Chegada
- Código Piloto
- Nome Piloto
- Qtde Voltas Completadas
- Tempo Total de Prova
Mais detalhes podem ser vistos no repositório.
A solução foi desenvolvida utilizando a linguagem Python 3.6.
Os testes foram escritos utilizando o framework unittest
Foram criadas 4 classes para representar as informações do problema e a solução.
- Driver: representa o objeto piloto contendo suas informções básicas
- Lap: representa cada uma das voltas da corrida com as informações como, tempo de volta e número da volta
- Result: representa o resultado final de cada um dos pilotos
- Racing: representa a corrida com todas as suas informações e os métodos para calcular o resultado
racing = Racing()
racing.parser_logfile(PATH_TO_LOG_FILE)
print(racing)
Para executar o projeto basta baixar o repositório e rodar o seguinte comando:
python3.6 example.py
Para executar os testes automatizados do projeto, basta rodar o seguinte comando:
python3.6 -m unittest discover