Sha256: 17f8cc86750d0dacfd3d1bb886a69bb8df3d0d96620aa9574bfeaa555f603e36
Contents?: true
Size: 1.04 KB
Versions: 5
Compression:
Stored size: 1.04 KB
Contents
require 'net/http' # This is only needed till I get ActiveResource going through rack-test class TestServer @pid_file = "./rest-assured.pid" def self.start(opts = {}) @server_port = opts[:port] || 9876 print 'Starting TestServer server... ' p = Process.fork do if get_pid print "\nPrevious TestServer instance appears to be running. Will be using it." else Process.exec("bundle exec rest-assured -p #{@server_port}") end end Process.detach(p) puts 'Done.' end def self.stop print 'Shutting down TestServer server... ' Process.kill('TERM', get_pid.to_i) rescue puts( "Failed to kill TestServer server: #{$!}" ) puts 'Done.' end def self.server_address "http://localhost:#{@server_port}" end def self.up? Net::HTTP.new('localhost', @server_port).head('/') true rescue Errno::ECONNREFUSED false end private def self.get_pid `ps -eo pid,args`.split("\n").grep( /rest-assured -p #{@server_port}/ ).map{|p| p.split.first }.first end end
Version data entries
5 entries across 5 versions & 1 rubygems