Sha256: 6dbd230d6e34bbe007be905be10f66700cc779f1f64fa83ed70e42822d075537

Contents?: true

Size: 1 KB

Versions: 11

Compression:

Stored size: 1 KB

Contents

# override aruba to filter out some stuff
module NormaliseArubaOutput
  def all_stdout
    normalise_output(super)
  end

  def normalise_output(out)
    out = out.gsub(/#{Dir.pwd}\/tmp\/aruba/, '.') # Remove absolute paths
    out = out.gsub(/tmp\/aruba\//, '')            # Fix aruba path
    out = out.gsub(/^.*cucumber_process\.rb.*$\n/, '')
    out = out.gsub(/^\d+m\d+\.\d+s$/, '0m0.012s') # Make duration predictable
    out = out.gsub(/Coverage report generated .+$\n/, '') # Remove SimpleCov message
  end

  def normalise_json(json)
    #make sure duration was captured (should be >= 0)
    #then set it to what is "expected" since duration is dynamic
    json.each do |feature|
      elements = feature.fetch('elements') { [] }
      elements.each do |scenario|
        scenario['steps'].each do |step|
          if step['result']
            expect(step['result']['duration']).to be >= 0
            step['result']['duration'] = 1
          end
        end
      end
    end
  end
end

World(NormaliseArubaOutput)

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
cucumber-2.0.0 features/lib/support/normalise_output.rb
cucumber-2.0.0.rc.5 features/lib/support/normalise_output.rb
cucumber-2.0.0.rc.4 features/lib/support/normalise_output.rb
cucumber-2.0.0.rc.3 features/lib/support/normalise_output.rb
cucumber-2.0.0.rc.2 features/lib/support/normalise_output.rb
cucumber-2.0.0.rc.1 features/lib/support/normalise_output.rb
cucumber-2.0.0.beta.5 features/lib/support/normalise_output.rb
cucumber-2.0.0.beta.4 features/lib/support/normalise_output.rb
cucumber-2.0.0.beta.3 features/lib/support/normalise_output.rb
cucumber-2.0.0.beta.2 features/lib/support/normalise_output.rb
cucumber-2.0.0.beta.1 features/lib/support/normalise_output.rb