contribテストモジュールをモジュールリストに加える、テストのエントリーポイントを指定する、依存パッケージにcontribを追加する、をやっています。contribはIdrisコンパイラと一緒に配布されているパッケージですが、デフォルトではリンクされません。idrisは標準ライブラリへの機能追加に保守的な方針を取っています。contribライブラリに入れ、誰が見ても必要だと判断できたらデフォルトでリンクされるpreludeやbaseに入ります。今回はcotribにあるテストライブラリを使います。テストを書いていくのですが、その前に先程定義したデータ型を公開しないといけません。前回のチュートリアルでモジュールについては学習したと思います。人はドキュメントを読んでおいて下さい。Idrisには3つの可視性の修飾子があります。モジュール外から型が見える。モジュール外から型と実装が見える。危険ですが、データ型だとコンストラクタまで公開したいケースは多々あるので便利でしょう。今回は二分木に「ノードの左の子に保持されている全ての値よりもノードの保持している値の方が大きい。ノードの右の子に保持されている全ての値よりも値の方が小さい。」という条件があります。