Skip to content

Instantly share code, notes, and snippets.

@krasio
Forked from jstorimer/tclient.rb
Created June 27, 2013 08:32
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 krasio/5874912 to your computer and use it in GitHub Desktop.
Save krasio/5874912 to your computer and use it in GitHub Desktop.
#!/usr/bin/env ruby
require 'socket'
test_file = ARGV[0]
socket = UNIXSocket.new('testing.sock')
socket.write(test_file)
socket.close_write
puts socket.read
#!/usr/bin/env ruby
require 'benchmark'
require 'socket'
require 'rspec/autorun'
ENV['RAILS_ENV'] = 'test'
rails_boot = Benchmark.measure {
require './config/application'
}
puts "Rails loaded after #{rails_boot}s..."
server = UNIXServer.new('testing.sock')
parent_process_id = Process.pid
at_exit {
if Process.pid == parent_process_id
File.unlink('testing.sock')
end
}
trap('INT') { exit }
loop do
client = server.accept
test_file = client.read
pid = fork do
$stdout.reopen(client)
require test_file
end
Process.wait(pid)
client.close
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment