Преглед изворни кода

Safer runtime error handling.

master
Ben Kurtovic пре 10 година
родитељ
комит
86d3a534ce
2 измењених фајлова са 7 додато и 2 уклоњено
  1. +6
    -1
      lib/kgrader/runtime.rb
  2. +1
    -1
      spec/cs241h

+ 6
- 1
lib/kgrader/runtime.rb Прегледај датотеку

@@ -7,17 +7,22 @@ module KGrader


def testcase(options) def testcase(options)
puts " running test: #{File.basename $0} ".center MAX_COLS, '=' puts " running test: #{File.basename $0} ".center MAX_COLS, '='

begin begin
Timeout::timeout options[:alarm] { yield } Timeout::timeout options[:alarm] { yield }
rescue Timeout::Error rescue Timeout::Error
comment "timeout" comment "timeout"
grade 0 grade 0
end end
puts " done ".center MAX_COLS, '-'

puts "no grade received?"
comment "autograde error (no grade reported); please contact staff"
grade 0
end end


def grade(score) def grade(score)
IO.new(3).write score IO.new(3).write score
puts " done ".center MAX_COLS, '-'
exit exit
end end




+ 1
- 1
spec/cs241h

@@ -1 +1 @@
Subproject commit 514bd96d25d797ceb17f166f508e3195afb795f1
Subproject commit 22fd6cb688fcce712b4b68235533b59753aeaed7

Loading…
Откажи
Сачувај