def initialize(args, output, error)
raise ArgumentError, "expected array of args" unless args.is_a?(Array)
@output = output
@error = error
@options = {}
opt = OptionParser.new
opt.banner = "Usage: spork [test framework name] [options]\n\n"
opt.separator "Options:"
opt.on("-b", "--bootstrap") {|ignore| @options[:bootstrap] = true }
opt.on("-d", "--diagnose") {|ignore| @options[:diagnose] = true }
opt.on("-h", "--help") {|ignore| @options[:help] = true }
opt.on("-p", "--port [PORT]") {|port| @options[:port] = port }
non_option_args = args.select { |arg| ! args[0].match(/^-/) }
@options[:server_matcher] = non_option_args[0]
opt.parse!(args)
if @options[:help]
@output.puts opt
@output.puts
@output.puts supported_test_frameworks_text
exit(0)
end
end