Hatena::Groupocaml-nagoya

yoshihiro503の関数的日記

2011-04-06 (Wed)

haXe用のQuickCheckを書いてみた。

| 19:31 | haXe用のQuickCheckを書いてみた。 - yoshihiro503の関数的日記 を含むブックマーク はてなブックマーク - haXe用のQuickCheckを書いてみた。 - yoshihiro503の関数的日記

使い方はこんな感じ

import haxe.unit.TestCase;
import haxe.unit.TestRunner;
import QuickCheck;

class MyTest extends QuickCheck {
  public function testN() {
    var q = this;
    quickCheck(forall(Gen.int, function(n) {
      return q.check(2*n == n+n);
    }));
  }

  public function testAppendLength() {
    var q = this;
    quickCheck(forall(Gen.list(Gen.int), function(xs) {
      return q.forall(Gen.list(Gen.int), function(ys) {
        return q.check(xs.length + ys.length == Lambda.concat(xs,ys).length);
      });
    }));
  }
}

class Sample {
  static function main() {
    var r = new TestRunner();
    r.add(new MyTest());
    r.run();
  }
}

ソースコードはこちら

https://bitbucket.org/yoshihiro503/haxecheck