module Sauce::SeleniumForTestUnit
Attributes
browser[R]
page[R]
s[R]
selenium[R]
Public Instance Methods
run(*args, &blk)
click to toggle source
Calls superclass method
# File lib/sauce/test_unit.rb, line 12 def run(*args, &blk) if self.respond_to? :name my_name = self.name else my_name = self.__name__ end unless my_name =~ /^default_test/ config = Sauce::Config.new if config[:application_host] unless ENV['TEST_ENV_NUMBER'].to_i > 1 Sauce::Connect.ensure_connected(:host => config[:application_host], :port => config[:application_port] || 80) end end unless defined?(@@server) unless ENV['TEST_ENV_NUMBER'].to_i > 1 if config[:start_local_application] && Sauce::Utilities::RailsServer.is_rails_app? @@server = Sauce::Utilities::RailsServer.new @@server.start at_exit do @@server.stop end end end end config[:browsers].each do |os, browser, version| options = self.class.sauce_config options.merge!({:os => os, :browser => browser, :browser_version => version, :job_name => my_name.to_s}) @browser = Sauce::Selenium2.new(options) Sauce.driver_pool[Thread.current.object_id] = @browser super(*args, &blk) SauceWhisk::Jobs.change_status @browser.session_id, passed? @browser.stop Sauce.driver_pool.delete Thread.current.object_id end end end