Class: RSpec::Trunk

Inherits:
Object
  • Object
show all
Defined in:
lib/trunk_spec_helper.rb

Overview

Trunk is a class that is used to monitor the execution of the Example class

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(example) ⇒ Trunk

Returns a new instance of Trunk.



175
176
177
# File 'lib/trunk_spec_helper.rb', line 175

def initialize(example)
  @example = example
end

Class Method Details

.setupObject



165
166
167
168
169
170
171
172
173
# File 'lib/trunk_spec_helper.rb', line 165

def self.setup
  RSpec.configure do |config|
    if trunk_disabled
      config.around(:each, &:run)
    else
      config.around(:each, &:run_with_trunk)
    end
  end
end

Instance Method Details

#current_exampleObject



179
180
181
# File 'lib/trunk_spec_helper.rb', line 179

def current_example
  @current_example ||= RSpec.current_example
end

#runObject



183
184
185
186
187
188
189
190
191
192
# File 'lib/trunk_spec_helper.rb', line 183

def run
  # run the test
  @example.run
  # monitor attempts in the metadata
  if @example.[:attempt_number]
    @example.[:attempt_number] += 1
  else
    @example.[:attempt_number] = 0
  end
end