Sha256: 6d7dd63450ac9fd82ea88a9993e425b81abfd1e8664970fec2df1f4ddea7447d

Contents?: true

Size: 778 Bytes

Versions: 9

Compression:

Stored size: 778 Bytes

Contents

require 'cucumber/formatter/junit'
require 'mediawiki_selenium/remote_browser_factory'
require 'set'

module Cucumber::Formatter
  class Sauce < Junit
    def before_steps(_steps)
      @sids = Set.new

      super
    end

    def embed(session_id, mime, _label)
      return unless mime == 'application/vnd.webdriver-session-id'

      @sids << session_id
    end

    private

    def format_exception(exception)
      if @sids.nil? || @sids.empty?
        message = 'Uh-oh. Could not find link to Sauce Labs job URL.'
      else
        message = @sids.map { |sid| "Sauce Labs job URL: http://saucelabs.com/jobs/#{sid}\n" }.join
      end

      msgs = [message] + ["#{exception.message} (#{exception.class})"] + exception.backtrace

      msgs.join("\n")
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
mediawiki_selenium-1.8.1 lib/mediawiki_selenium/cucumber/sauce.rb
mediawiki_selenium-1.8.0 lib/mediawiki_selenium/cucumber/sauce.rb
mediawiki_selenium-1.7.4 lib/mediawiki_selenium/cucumber/sauce.rb
mediawiki_selenium-1.7.3 lib/mediawiki_selenium/cucumber/sauce.rb
mediawiki_selenium-1.7.2 lib/mediawiki_selenium/cucumber/sauce.rb
mediawiki_selenium-1.7.1 lib/mediawiki_selenium/cucumber/sauce.rb
mediawiki_selenium-1.7.0 lib/mediawiki_selenium/cucumber/sauce.rb
mediawiki_selenium-1.6.5 lib/mediawiki_selenium/cucumber/sauce.rb
mediawiki_selenium-1.6.4 lib/mediawiki_selenium/cucumber/sauce.rb