Aprenda a testar seus exercícios de Prolog no Exercism
O SWI Prolog pode ser rodado de forma interativa ou executado diretamente na linha de comando.
Você pode usar o comando a seguir para rodar os testes na linha de comando:
swipl -f <exercise>.pl -s <exercise>_tests.plt -g run_tests,halt -t 'halt(1)'
Substitua <exercise> pelo nome do exercício que você está implementando.
Para rodar o Prolog de forma interativa, primeiro execute:
swipl
Depois que o console do Prolog iniciar, carregue sua implementação e rode os testes com:
?- ["<exercise>.pl"].
?- ["<exercise>_tests.plt"].
?- run_tests.
Substitua <exercise> pelo nome do exercício que você está implementando.
Depois que os arquivos acima estiverem carregados, você pode aplicar qualquer alteração que tiver feito rodando:
?- make.
Quando você começa um exercício, só o primeiro teste roda. Os demais foram ignorados ao adicionar condition(pending) ao objetivo test.
Quando o primeiro teste passar, reative o próximo teste trocando pending por true em condition(pending).
Repita para cada teste até que todos estejam rodando e passando.
Adicione o argumento -- --all ao final do comando para rodar também os testes pendentes:
swipl -f <exercise>.pl -s <exercise>_tests.plt -g run_tests,halt -t 'halt(1)' -- --all