Sha256: 447d194fe3685302aac312593aedb67337b40a231fcd0590fd4c2b257bd0c4bf

Contents?: true

Size: 876 Bytes

Versions: 1

Compression:

Stored size: 876 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" unless %i[raise_report raise ignore].include? val

      @error = val
    rescue StandardError => error
      Webdrone.report_error(@a0, error)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
webdrone-1.10.0 lib/webdrone/conf.rb