Ruby 1.9.3 リファレンスマニュアル > ライブラリ一覧 > test/unit/assertionsライブラリ > Test::Unit::Assertionsモジュール

module Test::Unit::Assertions

クラスの継承リスト: Test::Unit::Assertions < MiniTest::Assertions

要約

各種の assert メソッドを提供するモジュールです。

Test::Unit::TestCase に include されて使われます。 test/unit の他のクラスとは独立して、提供されている assert メソッドだけを使うこともできます。 assert_block メソッドを使うことにより、新しい assert メソッドを加えることもできます。

assert が失敗した時は、例外 MiniTest::Assertion を投げます。 各 assert メソッドの最後の引数 message はテストが失敗したときに表示される メッセージです。

目次

インスタンスメソッド
assert_equal assert_no_match assert_not_equal assert_not_nil assert_not_same assert_nothing_raised assert_nothing_thrown assert_raise build_message mu_pp

インスタンスメソッド

assert_equal(expected, actual, message = nil) -> ()[permalink][rdoc]

expected == actual ならばパスします。

MiniTest::Assertions#assert_sameとの違いに注意して下さい。

[PARAM] expected:
期待するオブジェクトを指定します。
[PARAM] actual:
検証するオブジェクトを指定します。
[PARAM] message:
assert が失敗した時に表示するメッセージを文字列で指定し ます。指定しなかった場合は表示しません。
[EXCEPTION] MiniTest::Assertion:
assert が失敗した時に発生します。

[SEE_ALSO] Test::Unit::Assertions#assert_not_equal, Object#==

assert_no_match(regexp, string, message = "") -> ()[permalink][rdoc]

regexp !~ string が真ならばパスします。

[PARAM] regexp:
マッチしないと期待するパターンを正規表現で指定します。
[PARAM] string:
検証する文字列を指定します。
[PARAM] message:
assert が失敗した時に表示するメッセージを文字列で指定し ます。指定しなかった場合は表示しません。
[EXCEPTION] MiniTest::Assertion:
assert が失敗した時に発生します。

MiniTest::Assertions#assert_match とは異なり regexp には正規表現 以外は指定できません。

assert_not_equal(expected, actual, message = "") -> ()[permalink][rdoc]

expected != actual ならばパスします。

[PARAM] expected:
同じものではないと期待するオブジェクトを指定します。
[PARAM] actual:
検証するオブジェクトを指定します。
[PARAM] message:
assert が失敗した時に表示するメッセージを文字列で指定し ます。指定しなかった場合は表示しません。
[EXCEPTION] MiniTest::Assertion:
assert が失敗した時に発生します。

[SEE_ALSO] Test::Unit::Assertions#assert_equal

assert_not_nil(object, message = "") -> ()[permalink][rdoc]

object が nil でないならばパスします。

[PARAM] object:
検証するオブジェクトを指定します。
[PARAM] message:
assert が失敗した時に表示するメッセージを文字列で指定し ます。指定しなかった場合は表示しません。
[EXCEPTION] MiniTest::Assertion:
assert が失敗した時に発生します。

[SEE_ALSO] MiniTest::Assertions#assert_nil

assert_not_same(expected, actual, message = "") -> ()[permalink][rdoc]

!actual.equal?(expected) が真ならパスします。

[PARAM] expected:
期待するオブジェクトを指定します。
[PARAM] actual:
検証するオブジェクトを指定します。
[PARAM] message:
assert が失敗した時に表示するメッセージを文字列で指定し ます。指定しなかった場合は表示しません。
[EXCEPTION] MiniTest::Assertion:
assert が失敗した時に発生します。

[SEE_ALSO] Object#equal?, MiniTest::Assertions#assert_same

assert_nothing_raised(message = "") { ... }[permalink][rdoc]
assert_nothing_raised(klass1, klass2, ..., message = "") { ... }

ブロックを実行して例外が起きなければパスします。

ブロックを実行して発生した例外が klass1, klass2, ..., のいずれかのクラスの インスタンスである場合は、assert は失敗扱いとなり、Test::Unit::AssertionFailedError を投げます。そうでない場合は、エラー扱いとなり発生した例外を再び投げます。

[PARAM] klassX:
例外クラスを指定します。
[PARAM] message:
assert が失敗した時に表示するメッセージを文字列で指定し ます。指定しなかった場合は表示しません。
[EXCEPTION] MiniTest::Assertion:
assert が失敗した時に発生します。
assert_nothing_thrown(message = "") { ... } -> ()[permalink][rdoc]

ブロックを実行して throw が起こらなければパスします。

[PARAM] message:
assert が失敗した時に表示するメッセージを文字列で指定し ます。指定しなかった場合は表示しません。
[EXCEPTION] MiniTest::Assertion:
assert が失敗した時に発生します。
assert_raise(message = "") { ... } -> object[permalink][rdoc]
assert_raise(klass1, klass2, ..., message = "") { ... } -> object

ブロックを実行して例外が発生し、その例外が klass1, klass2,... のいずれかのクラスのインスタンスならばパスします。

assert にパスした時は、実際に投げられた例外を返します。

[PARAM] klassX:
例外クラスを指定します。
[PARAM] message:
assert が失敗した時に表示するメッセージを文字列で指定し ます。指定しなかった場合は表示しません。
[EXCEPTION] MiniTest::Assertion:
assert が失敗した時に発生します。
build_message(head, template = nil, *arguments)[permalink][rdoc]

テストが失敗したときに表示されるメッセージを作成します。

[PARAM] head:
templateから作成するメッセージの前に表示する文字列を指定します。
[PARAM] template:
作成するメッセージのテンプレートを文字列で指定します。
[PARAM] arguments:
template 内の '?' を置き換えるオブジェクトを配列で指定します。
[RETURN]
作成したメッセージをTest::Unit::Assertions::AssertionMessageの インスタンスで返します。

head は template の前に追加されます。template に指定した文字列に '?' が 含まれていた場合は、arguments に指定したオブジェクトでそれぞれ置き換え られます。

mu_pp(obj) -> String[permalink][rdoc]

obj を人間が読みやすい形の文字列表現にして返します。

[PARAM] obj:
任意のオブジェクト
[RETURN]
obj を人間が読みやすい形式にした文字列