Class: CombinationApprovals
- Inherits:
-
Object
- Object
- CombinationApprovals
- Defined in:
- lib/approvals/combination_approvals.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.verify_all_combinations(*arg_variations, namer:) ⇒ Object
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/approvals/combination_approvals.rb', line 2 def self.verify_all_combinations(*arg_variations, namer:) combo = new() arg_variations.each do |list| combo.arg(list) end output = "" combo.all_combinations.each do |args| begin result = yield *args rescue StandardError => exception result = "#{exception.inspect}" end output << "#{args} => #{result}\n" end Approvals.verify(output, namer: namer) end |
Instance Method Details
#all_combinations ⇒ Object
25 26 27 28 |
# File 'lib/approvals/combination_approvals.rb', line 25 def all_combinations() first, *rest = *@args first.product(*rest) end |
#arg(values) ⇒ Object
20 21 22 23 |
# File 'lib/approvals/combination_approvals.rb', line 20 def arg(values) @args ||= [] @args << values end |