Sha256: bdba7ea3a5dad7aedac5e44a3909a38d129875d143b2c6105dd9e5b6a1e7c15b

Contents?: true

Size: 872 Bytes

Versions: 7

Compression:

Stored size: 872 Bytes

Contents

# frozen_string_literal: true

module Webdrone
  class Browser
    def conf
      @conf ||= Conf.new self
    end
  end

  class Conf
    attr_accessor :developer, :logger
    attr_reader :a0, :timeout, :outdir, :error

    def initialize(a0)
      @a0 = a0
      @outdir = '.'
      @error = :raise_report
    end

    def timeout=(val)
      @timeout = val
      @a0.driver.manage.timeouts.implicit_wait = val
    rescue StandardError => error
      Webdrone.report_error(@a0, error)
    end

    def outdir=(val)
      @outdir = val
      FileUtils.mkdir_p val
    rescue StandardError => error
      Webdrone.report_error(@a0, error)
    end

    def error=(val)
      raise "Invalid value '#{val}' for error" if !%i[raise_report raise ignore].include? val
      @error = val
    rescue StandardError => error
      Webdrone.report_error(@a0, error)
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
webdrone-1.8.12 lib/webdrone/conf.rb
webdrone-1.8.10 lib/webdrone/conf.rb
webdrone-1.8.8 lib/webdrone/conf.rb
webdrone-1.8.6 lib/webdrone/conf.rb
webdrone-1.8.4 lib/webdrone/conf.rb
webdrone-1.8.2 lib/webdrone/conf.rb
webdrone-1.8.0 lib/webdrone/conf.rb