Statistical Programming

ScalaTestすごい楽。

試してみたのは単純な、FunSuiteクラスを継承するタイプ。

class Datates extends FunSuite {

    test("name of this test"){

        assert(0==0,"if fail,message appears")

    } 

でもDoubleが比較に入ってくると小数点以下がちょこっと違うだけでほとんど同じ!みたいなケースが出てきて、そこは融通きかしておっけーにしちゃえよ!とかあるからそんな時はEquality[Double]クラスに対して暗黙の型変換を行い、どれくらいまで許容するかを指定してあげる。

import org.scalautils.TolerantNumerics._

implicit val doubleEquality = tolerantDoubleEquality(0.001)

これでだいたい小数点三桁以下までなら許容するはず。それと、比較する時に上では==を使っていたけど許容範囲を指定する時は===を使う。

assert(2.0009===2.0)