Como realizar testes mais exaustivos?
schnorr opened this issue · comments
Lucas M. Schnorr commented
Na Etapa 1, a forma mais simples de realizar testes é simplesmente executando o analisador léxico:
./etapa1
e depois digitando possíveis tokens e observendo se eles foram reconhecidos.
Uma forma que possibilita testes mais exaustivos é criar um arquivo (com o nome teste, por exemplo) com o seguinte conteúdo:
int var; float xis; while ( 2 == var) { xis = xis + var; }
e executar o programa com o seguinte comando:
cat teste | ./etapa1
Assim, o programa cat
coloca o conteúdo do arquivo teste na saída padrão, que é redirecionada para a entrada padrão do programa ./etapa1
. Como o flex por default lê da entrada padrão (pois yyin
está definido para stdin
), isso funciona sem maiores alterações.