Module: TestR::Server

Included in:
Driver, Master
Defined in:
lib/testr/server.rb

Instance Method Summary collapse

Instance Method Details

#loopObject



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/testr/server.rb', line 10

def loop
  (@upstream = STDOUT.dup).sync = true
  STDOUT.reopen(STDERR).sync = true

  catch :testr_server_quit do
    while line = STDIN.gets
      warn "#{caller[2]} RECV #{line.chomp}" if $DEBUG
      command = JSON.load(line)
      method = command.first
      if respond_to? method and method != __method__ # prevent loops
        @command = command
        __send__(*command)
      else
        warn "#{self}: bad command: #{method}"
      end
    end
  end
end

#quitObject



6
7
8
# File 'lib/testr/server.rb', line 6

def quit
  throw :testr_server_quit
end