了解如何在 Exercism 上测试你的 Prolog 练习
SWI Prolog 既可以交互式运行,也可以直接在命令行执行。
可以用下面的命令在命令行运行测试:
swipl -f <exercise>.pl -s <exercise>_tests.plt -g run_tests,halt -t 'halt(1)'
把<exercise>替换成你正在实现的练习的名称。
要交互式运行 prolog,先运行:
swipl
prolog 控制台启动后,加载你的实现并运行测试:
?- ["<exercise>.pl"].
?- ["<exercise>_tests.plt"].
?- run_tests.
把<exercise>替换成你正在实现的练习的名称。
上面的文件加载完成后,运行下面的命令即可应用你做的任何改动:
?- make.
刚开始做一道练习时,只有第一个测试会运行。其余的测试都通过在 test 目标里加上 condition(pending) 被跳过了。
第一个测试通过后,把 condition(pending) 里的 pending 改成 true,即可取消跳过下一个测试。
对每个测试重复这一步骤,直到所有测试都能运行并通过。
在命令末尾加上 -- --all 参数,就能同时运行所有待处理的测试:
swipl -f <exercise>.pl -s <exercise>_tests.plt -g run_tests,halt -t 'halt(1)' -- --all