Test::Unit

使い方

Test::Unit::Assertions

メソッド

各 assertion の最後の引数 message はテストが失敗したときに表示される メッセージ

assert(boolean, message="")

boolean が真なら pass

assert_equal(expected, actual, message=nil)

expected == actual ならば pass

assert_not_equal(expected, actual, message="")

expected != actual ならば pass

assert_instance_of(klass, object, message="")

klass == object.class が真なら pass

assert_nil(object, message="")

object.nil? ならば pass

assert_not_nil(object, message="")

!object.nil? ならば pass

assert_kind_of(klass, object, message="")

object.kind_of?(klass) が真なら pass

assert_respond_to(object, method, message="")

object.respond_to?(method) が真なら pass

assert_match(pattern, string, message="")

string =~ pattern が真ならば pass

assert_no_match(regexp, string, message="")

regexp !~ string が真ならば pass

assert_same(expected, actual, message="")

actual.equal?(expected) が真なら pass

assert_not_same(expected, actual, message="")

!actual.equal?(expected) が真なら pass

assert_operator(object1, operator, object2, message="")

object1.send(operator, object2) が真なら pass

assert_raises(expected_exception_klass, message="") { ... }

ブロックを実行して例外が発生し、その例外が expected_exception_klass クラスならば pass

assert_nothing_raised(*args) { ... }

ブロックを実行して例外が起きなければ pass

flunk(message="")

常に失敗

assert_throws(expected_symbol, message="") { ... }

ブロックを実行して :expected_symbol が throw されたら pass

assert_nothing_thrown(message="") { ... }

ブロックを実行して throw が起こらなければ pass

assert_in_delta(expected_float, actual_float, delta, message="")

(expected_float.to_f - actual_float.to_f).abs <= delta.to_f が真なら pass

delta は正の数でなければならない。

assert_send(send_array, message="")

send_array[0].__send__(send_array[1], *send_array[2..-1]) が真なら pass

assert_block(message="") { ... }

block の結果が真なら pass

RubyUnit からの移行

assertion メソッドの違いは ruby-src:lib/runit/assert.rb を参照。 RUNIT::Assert も参照。