Class: Fitting::Report::Tests
- Inherits:
-
Object
- Object
- Fitting::Report::Tests
- Defined in:
- lib/fitting/report/tests.rb
Instance Attribute Summary collapse
-
#tests ⇒ Object
readonly
Returns the value of attribute tests.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(tests) ⇒ Tests
constructor
A new instance of Tests.
- #push(test) ⇒ Object
- #size ⇒ Object
- #to_a ⇒ Object
- #to_h ⇒ Object
- #without_actions ⇒ Object
- #without_combinations ⇒ Object
- #without_prefixes ⇒ Object
- #without_responses ⇒ Object
Constructor Details
#initialize(tests) ⇒ Tests
Returns a new instance of Tests.
8 9 10 |
# File 'lib/fitting/report/tests.rb', line 8 def initialize(tests) @tests = tests end |
Instance Attribute Details
#tests ⇒ Object (readonly)
Returns the value of attribute tests.
6 7 8 |
# File 'lib/fitting/report/tests.rb', line 6 def tests @tests end |
Class Method Details
.new_from_config ⇒ Object
12 13 14 15 16 17 18 19 |
# File 'lib/fitting/report/tests.rb', line 12 def self.new_from_config tests = [] File.read('log/test.log').split("\n").select{|f|f.include?('incoming request ')}.each do |test| tests.push(Fitting::Report::Test.new(JSON.load(test.split('incoming request ')[1]))) end tests.sort { |a, b| b.path <=> a.path } new(tests) end |
.new_from_outgoing_config ⇒ Object
21 22 23 24 25 26 27 28 |
# File 'lib/fitting/report/tests.rb', line 21 def self.new_from_outgoing_config tests = [] File.read('log/test.log').split("\n").select{|f|f.include?('outgoing request ')}.each do |test| tests.push(Fitting::Report::Test.new(JSON.load(test.split('outgoing request ')[1]))) end tests.sort { |a, b| b.path <=> a.path } new(tests) end |
Instance Method Details
#push(test) ⇒ Object
54 55 56 |
# File 'lib/fitting/report/tests.rb', line 54 def push(test) tests.push(test) end |
#size ⇒ Object
58 59 60 |
# File 'lib/fitting/report/tests.rb', line 58 def size tests.size end |
#to_a ⇒ Object
62 63 64 |
# File 'lib/fitting/report/tests.rb', line 62 def to_a tests end |
#to_h ⇒ Object
66 67 68 69 70 71 72 |
# File 'lib/fitting/report/tests.rb', line 66 def to_h return @hash if @hash @hash = tests.inject({}) do |res, test| res.merge!(test.id => test.to_h) end end |
#without_actions ⇒ Object
36 37 38 39 40 |
# File 'lib/fitting/report/tests.rb', line 36 def without_actions tests.each_with_object([]) do |test, result| result.push("#{test.method} #{test.path}") unless test.there_an_actions? end end |
#without_combinations ⇒ Object
48 49 50 51 52 |
# File 'lib/fitting/report/tests.rb', line 48 def without_combinations tests.each_with_object([]) do |test, result| result.push(test.path) unless test.there_an_combinations? end end |
#without_prefixes ⇒ Object
30 31 32 33 34 |
# File 'lib/fitting/report/tests.rb', line 30 def without_prefixes tests.each_with_object([]) do |test, result| result.push(test.path) unless test.there_a_prefix? end end |
#without_responses ⇒ Object
42 43 44 45 46 |
# File 'lib/fitting/report/tests.rb', line 42 def without_responses tests.each_with_object([]) do |test, result| result.push(test.id) unless test.there_an_responses? end end |