module Minitest::Data::Test::ClassMethods
Public Instance Methods
data(*arguments, &block)
click to toggle source
# File lib/minitest/data.rb, line 17 def data(*arguments, &block) case arguments.size when 0 raise ArgumentError, "no block is given" unless block_given? data_set = block.call when 1 data_set = arguments[0] when 2 data_set = { arguments[0] => arguments[1] } else message = "wrong number arguments(#{arguments.size} for 1..2)" raise ArgumentError, message end @@data.merge!(data_set) end
data_exist?(method_name)
click to toggle source
# File lib/minitest/data.rb, line 45 def data_exist?(method_name) @@data_set.key?(method_name) end
data_set()
click to toggle source
# File lib/minitest/data.rb, line 41 def data_set @@data_set end
method_added(name)
click to toggle source
# File lib/minitest/data.rb, line 34 def method_added(name) unless @@data.empty? @@data_set[name] = @@data @@data = {} end end
run_one_method(klass, method_name, reporter)
click to toggle source
Calls superclass method
# File lib/minitest/data.rb, line 49 def run_one_method(klass, method_name, reporter) if klass.data_exist?(method_name.to_sym) reporter.prerecord(klass, method_name) data = klass.data_set[method_name.to_sym] data.each do |label, value| reporter.record Minitest.run_one_method(klass, method_name, label, value) end else super end end