Class: Webrat::Selenium::SinatraApplicationServer

Inherits:
ApplicationServer show all
Defined in:
lib/webrat/selenium/sinatra_application_server.rb

Instance Method Summary collapse

Methods inherited from ApplicationServer

boot, #boot, #prepare_pid_file, #stop_at_exit, #wait, #wait_for_socket

Instance Method Details

#failObject



21
22
23
24
25
26
# File 'lib/webrat/selenium/sinatra_application_server.rb', line 21

def fail
  $stderr.puts
  $stderr.puts
  $stderr.puts "==> Failed to boot the Sinatra application server... exiting!"
  exit
end

#pid_fileObject



28
29
30
# File 'lib/webrat/selenium/sinatra_application_server.rb', line 28

def pid_file
  prepare_pid_file(Dir.pwd, 'rack.pid')
end

#startObject



6
7
8
9
10
11
# File 'lib/webrat/selenium/sinatra_application_server.rb', line 6

def start
  fork do
    File.open('rack.pid', 'w') { |fp| fp.write Process.pid }
    exec 'rackup', File.expand_path(Dir.pwd + '/config.ru'), '-p', Webrat.configuration.application_port.to_s
  end
end

#stopObject



13
14
15
16
17
18
19
# File 'lib/webrat/selenium/sinatra_application_server.rb', line 13

def stop
  silence_stream(STDOUT) do
    pid = File.read(pid_file)
    system("kill -9 #{pid}")
    FileUtils.rm_f pid_file
  end
end