2016-11-14 12 views
0

を使用してメソッドをテストするには? 私は単体テストについて理解していますが、Rubyの場合はかなり新しいです。Rubyはどのように私は、このクラスを持っているminitest

は、これまでのところ私はこれを試してみました:

def setup 
    @t_configuration = Configuration.new('./config.yaml') 
end 

def test_config_defines_method 
    @t_configuration.config[:test_item] = "test" 
    assert @t_configuration.respond_to_missing?(:test_item) 
end 

イムわからない私は熊手テストを実行するとき、それは私にこれを与えるので、イムは、右のそれをテストする場合:

NoMethodError: private method `respond_to_missing?' called for #

明確な存在しない場合どのようにこれを解決するために、誰も私に同じようなテストが書かれている場所に指示することができますか?これまでのところ、Iveはhello worldタイプのテスト例しか見つけませんでしたが、この場合はあまり役に立ちません。

答えて

2

documentation for #respond_to_missing?に記載されているとおり、メソッドを直接呼び出す必要はありません。代わりに、オブジェクトがあなたのメソッドに応答しているかどうかチェックしたいと思っています。

assert @t_configuration.respond_to?(:test_item) 
+0

おかげで、今私はそれがすべてのオブジェクトの継承されたデフォルトの方法のいくつかの種類であることを知っている:これは#respond_to?メソッドを使用して行われます – Tomus

関連する問題