トップディレクトリでmake checkを実行すること。これにより、すべてのテストが行われる。各テストはその対象を検証し、正しく動作するか否かを判別する。すべてのテストが成功したとき、make checkは正常終了する。
個々のテストはtestsディレクトリに格納されている。詳細は次の通り。
mt19937_getの出力がmt19937arと一致することを確認する。ただし、初期化にはmt-liteのものではなくmt19937arと同一のものを用いる。
テストはtests/mt19937-primary-reference.txtを期待値とする。このファイル自体の正当性は、mt19937arに付属のmt19937ar.outを用いて次のようにして確認できる。
$ cd tests
$ ./mtlite-translate-mt19937ar-out < /SOMEWHERE/mt19937ar.out \
| cmp - mt19937-primary-reference.txt
mt11213b_getの出力がBoostに付属のboost::mt11213bと一致することを確認する。このテストを行うには、Boostが必要である。
mt19937_getの出力がBoostに付属のboost::mt19937と一致することを確認する。このテストを行うには、Boostが必要である。
mtlite::mt19937の出力がmt19937_getと一致することを確認する。他の3つの疑似乱数生成クラスについても同様のテストを行う。
mtX-loop-test, mtX-loop-nt-test
またはmtX_getの出力が、期待値ファイルに記載の期待値と一致することを確認する。
mtX_get_nt
mtX-nonloop-test, mtX-nonloop-nt-test
またはmtX_get_nonloopの出力が、対応するループ版の乱数生成関数と一致することを確認する。
mtX_get_nonloop_nt
mtX-block-test, mtX-block-nt-test
またはmtX_get_blockの出力が、対応するループ版の乱数生成関数と一致することを確認する。
mtX_get_block_nt