Sha256: 4f8a6372599e4595d91c9013063406cc033ab5536c0da3c2d26430d837572acb

Contents?: true

Size: 1.12 KB

Versions: 2

Compression:

Stored size: 1.12 KB

Contents

module SeleniumConnect
  class Server
    attr_reader :configuration

    def initialize(configuration)
      @configuration = configuration
    end

    def start
      rake "start"
    end

    def stop
      rake "stop"
    end

    def restart
      rake "restart"
    end

    private

    def generate_rake_task
      "require 'selenium/rake/server_task'

       Selenium::Rake::ServerTask.new(:server) do |t|
         #{
            if configuration.jar
              "t.jar = '#{configuration.jar}'"
            else
              "t.version = :latest"
            end
          }
         t.background
         #{
          if configuration.log
            "t.log = '#{configuration.log}'"
          else
            "t.log = false"
          end
         }
         t.port = #{configuration.port}
       end"
    end

    def get_rake_file
      rake_file = File.join(File.dirname(File.expand_path(__FILE__)))
      file = File.open(rake_file<<"/rake.task", "w")
      file << generate_rake_task
      file.close
      return rake_file
    end

    def rake(task)
      system "rake -f #{get_rake_file} server:#{task}"
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
selenium-connect-1.7.0 lib/selenium-connect/server.rb
selenium-connect-1.6.0 lib/selenium-connect/server.rb