Module: Test::Unit::Data::ClassMethods
- Defined in:
- lib/test/unit/data.rb,
lib/test/unit/data.rb
Defined Under Namespace
Classes: Loader
Instance Method Summary collapse
-
#data(*arguments, &block) ⇒ Object
This method provides Data-Driven-Test functionality.
-
#load_data(file_name) ⇒ Object
This method provides Data-Driven-Test functionality.
Instance Method Details
#data(label, data, options = {}) ⇒ Object #data(variable, patterns, options = {}) ⇒ Object #data(data_set, options = {}) ⇒ Object #data(options = {}, &block) ⇒ Object #data(options = {}, &block) ⇒ Object
This method provides Data-Driven-Test functionality.
Define test data in the test code.
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
# File 'lib/test/unit/data.rb', line 55 def data(*arguments, &block) n_arguments = arguments.size case n_arguments when 0 raise ArgumentError, "no block is given" unless block_given? data_set = block when 1 data_set = arguments[0] when 2 data_set = {arguments[0] => arguments[1]} else = "wrong number arguments(#{n_arguments} for 1..2)" raise ArgumentError, end current_data = current_attribute(:data)[:value] || [] attribute(:data, current_data + [data_set]) end |
#load_data(file_name) ⇒ Object
This method provides Data-Driven-Test functionality.
Load test data from the file. This is shorthand to load test data from file. If you want to load complex file, you can use #data with block.
90 91 92 93 |
# File 'lib/test/unit/data.rb', line 90 def load_data(file_name) loader = Loader.new(self) loader.load(file_name) end |