Hora de fim
Verifica a estrutura do valor de end_time em frequencies.txt.
Propriedades da regra
| Propriedade | Valor |
|---|---|
| Rule ID | frequencies_end_time_valid |
| Ficheiro | frequencies.txt |
| Campo | end_time |
| Tipo | Hora |
| Severidade | Obrigatório |
Descrição do campo: hora a que o serviço muda para outro intervalo entre veículos ou termina, na primeira paragem da viagem.
Mais informação em frequencies.txt.
Como funciona
O resultado depende da severidade definida na configuração da regra: obrigatório (error) reprova; recomendado (warning) passa com aviso; informativo (info) passa com informação. O aviso antecipa uma futura exigência, mas só reprova quando a configuração passar a obrigatório. Nos casos sem severidade explícita abaixo, a indicação de reprovação pressupõe a configuração obrigatória.
Um valor preenchido tem de ter oito carateres e três partes numéricas separadas por dois pontos. A regra não limita os minutos ou segundos nem compara as horas de início e fim.
A regra avalia cada linha do frequencies.txt, seguindo os passos abaixo por ordem, até um deles dar o resultado.
| # | Pergunta | Se sim | Se não |
|---|---|---|---|
| 1 | O campo está vazio? | ✅ Passa | Segue para o passo 2 |
| 2 | O valor tem exatamente oito carateres? | Segue para o passo 3 | ❌ Reprova: hora inválida |
| 3 | A separação por dois pontos produz três partes? | Segue para o passo 4 | ❌ Reprova: hora inválida |
| 4 | Cada parte pode ser lida como um número inteiro? | ✅ Passa | ❌ Reprova: hora inválida |
Os espaços não são removidos. A regra não exige dois algarismos em cada parte nem rejeita todos os sinais numéricos. Aceita 99:99:99, embora não represente minutos e segundos válidos. O preenchimento é verificado separadamente.
Exemplos
| Valor | Resultado | Porquê |
|---|---|---|
25:30:00 | ✅ Passa | Hora após a meia-noite do dia de serviço |
99:99:99 | ✅ Passa | Limites dos minutos e segundos não verificados |
7:00:00 | ❌ Reprova | Só sete carateres |
12:ab:00 | ❌ Reprova | Parte não numérica |
12-00-00 | ❌ Reprova | Faltam os separadores esperados |
Como corrigir
| Problema | Causa provável | O que fazer |
|---|---|---|
| Hora inválida | O valor não cumpre a estrutura aceite | Escrever end_time em frequencies.txt no formato HH:MM:SS, por exemplo 09:00:00, com minutos e segundos entre 00 e 59. |