CLでSRFI-78 — #:g1

Posted 2011-06-11 13:35:00 GMT

ぼんやりとSRFIをCLに移植していますが、今回は、SRFI-78 軽量テスト です。
CLにもユニットテストは色々ありますが、SRFIみたいなものである程度標準化されてるというのは良いですね
- srfi-78.
- (http://srfi.schemers.org/srfi-78/srfi-78.html)
基本的な使い方は、 checkの中で、式と期待する値を=>を挟んで書く、というシンプルなものです。
例のごとくシンボルの扱いが面倒臭いので、=> ではなく:=>としてみています。
便利機能としては、SRFI-42と組合さったcheck-ecというものが用意されています。

(use-package :srfi-78)

(check (+ 2 2) :=> 4) ;-> ; (+ 2 2) :=> 4 ; correct ; ;=>

(check (+ 2 2) :=> 5) ;-> ; (+ 2 2) :=> 4 ; *** failed *** ; ; expected result: 5 ; ;=>

(check-ec (:range e 100) (:let x e) (and (< e 50) (< x 50)) :=> t (e x)) ;-> ; (LET ((E 50) (X 50)) ; (AND (< E 50) (< X 50))) :=> NIL ; *** failed *** ; ; expected result: T ;


comments powered by Disqus