Sha256: e1997b4521b67603fa9130ecded776339cfbd2b03aa6711b9a598d3d89c767f6

Contents?: true

Size: 1.65 KB

Versions: 2

Compression:

Stored size: 1.65 KB

Contents

# encoding: utf-8
module WatirSpec
  class << self
    attr_accessor :browser_args, :persistent_browser, :unguarded, :implementation

    def html
      File.expand_path("#{File.dirname(__FILE__)}/../html")
    end

    def files
      "file://#{html}"
    end

    def host
      "http://#{Server.bind}:#{Server.port}"
    end

    def unguarded?
      @unguarded ||= false
    end

    def platform
      @platform ||= case RUBY_PLATFORM
                    when /java/
                      :java
                    when /mswin|msys|mingw32/
                      :windows
                    when /darwin/
                      :macosx
                    when /linux/
                      :linux
                    else
                      RUBY_PLATFORM
                    end
    end

    def implementation
      @implementation ||= (
        imp = WatirSpec::Implementation.new
        yield imp if block_given?

        imp
      )
    end

    def implementation=(imp)
      unless imp.kind_of? WatirSpec::Implementation
        raise TypeError, "expected WatirSpec::Implementation, got #{imp.class}"
      end

      @implementation = imp
    end

    def new_browser
      klass = WatirSpec.implementation.browser_class
      args = WatirSpec.implementation.browser_args
      args ? klass.new(*args) : klass.new
    end

    def ruby
      @ruby ||= (
        if defined?(Gem)
          Gem.ruby
        else
          require "rbconfig"
          rb = File.join(RbConfig::CONFIG.values_at('BINDIR', 'RUBY_INSTALL_NAME').compact)
          ext = RbConfig::CONFIG['EXEEXT']

          "#{rb}#{ext}"
        end
      )
    end

  end # class << WatirSpec
end # WatirSpec

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
watir-webdriver-0.1.4 spec/watirspec/lib/watirspec.rb
watir-webdriver-0.1.3 spec/watirspec/lib/watirspec.rb