privateメソッドをテストしたいときは
http://www.bookshelf.jp/2ch/tech/1204466626.html >>38 をもとに
テストスクリプト test-sample.rb の冒頭にひとこと書いておく。
require 'runit/testcase' require 'runit/cui/testrunner' require 'sample' class Sample # テストしたいクラス private_instance_methods.each{|e| public e.to_sym} end
テストしたいメソッドだけ明示する方が好みかな。
class Sample # テストしたいクラス %w(check_url secret_code).each{|e| public e.to_sym} end
to_sym初めて知った。
(追記)
つづき読んだら >>48 がもっと簡単に書いていた。
class Sample public *private_instance_methods end
こんなことができるのか!
とすると行き着くところは……
class Sample public :check_url, :secret_code end
……なんか至ってフツーになった(笑)
フツーで簡単ということは、これが真理か。