Class: Fitting::Report::Combinations
- Inherits:
-
Object
- Object
- Fitting::Report::Combinations
- Defined in:
- lib/fitting/report/combinations.rb
Instance Method Summary collapse
- #cram_into_the_appropriate_combinations(test) ⇒ Object
-
#initialize(combinations) ⇒ Combinations
constructor
A new instance of Combinations.
- #is_there_a_suitable_combination?(test) ⇒ Boolean
- #join(tests) ⇒ Object
- #size ⇒ Object
- #size_with_tests ⇒ Object
- #to_a ⇒ Object
Constructor Details
#initialize(combinations) ⇒ Combinations
Returns a new instance of Combinations.
4 5 6 |
# File 'lib/fitting/report/combinations.rb', line 4 def initialize(combinations) @combinations = combinations end |
Instance Method Details
#cram_into_the_appropriate_combinations(test) ⇒ Object
38 39 40 41 42 43 44 |
# File 'lib/fitting/report/combinations.rb', line 38 def cram_into_the_appropriate_combinations(test) @combinations.map do |combination| if JSON::Validator.fully_validate(combination.json_schema, test.body) == [] combination.add_test(test) end end end |
#is_there_a_suitable_combination?(test) ⇒ Boolean
29 30 31 32 33 34 35 36 |
# File 'lib/fitting/report/combinations.rb', line 29 def is_there_a_suitable_combination?(test) return false if @combinations.nil? @combinations.map do |combination| return true if JSON::Validator.fully_validate(combination.json_schema, test.body) == [] end false end |
#join(tests) ⇒ Object
20 21 22 23 24 25 26 27 |
# File 'lib/fitting/report/combinations.rb', line 20 def join(tests) tests.to_a.map do |test| if is_there_a_suitable_combination?(test) cram_into_the_appropriate_combinations(test) test.mark_combination end end end |
#size ⇒ Object
12 13 14 |
# File 'lib/fitting/report/combinations.rb', line 12 def size @combinations.size end |
#size_with_tests ⇒ Object
16 17 18 |
# File 'lib/fitting/report/combinations.rb', line 16 def size_with_tests @combinations.count { |c| c.tests.size != 0 } end |
#to_a ⇒ Object
8 9 10 |
# File 'lib/fitting/report/combinations.rb', line 8 def to_a @combinations end |