Skip to content

Instantly share code, notes, and snippets.

@phillipkoebbe
Created February 5, 2010 14:30
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save phillipkoebbe/295826 to your computer and use it in GitHub Desktop.
Save phillipkoebbe/295826 to your computer and use it in GitHub Desktop.
require 'culerity'
def culerity_startup
$rails_server ||= Culerity::run_rails(:environment => 'culerity_development', :port => 3001)
$server ||= Culerity::run_server
@host = 'http://localhost:3001'
ActionMailer::Base.clear_deliveries
end
def culerity_shutdown
if $browser
$browser.close
$browser.exit
$browser = nil
end
if $server
$server.close
$server = nil
end
if $rails_server
Process.kill(6, $rails_server.pid.to_i)
$rails_server = nil
end
end
def start_browser(enable_javascript)
$javascript_enabled = enable_javascript
$browser = Culerity::RemoteBrowserProxy.new $server, {
:browser => :firefox3,
:status_code_exceptions => true,
:javascript_exceptions => enable_javascript,
:resynchronize => enable_javascript,
:javascript_enabled => enable_javascript
}
$browser.log_level = :warning
end
Before do
$env_javascript_enabled = ENV['CULERITY_ENABLE_JAVASCRIPT'] == 'TRUE'
culerity_startup
start_browser($env_javascript_enabled)
end
Before('@javascript') do
start_browser(true) unless $javascript_enabled
end
Before('~@javascript') do
start_browser(false) if $javascript_enabled && !$env_javascript_enabled
end
After do
$browser.close
end
at_exit do
culerity_shutdown
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment