Description:
fix bugs: paths, check compilation error, all_tests.cfg.erb git-svn-id: http://theory.cpe.ku.ac.th/grader/cli/trunk/scripts@15 6386c4cd-e34a-4fa8-8920-d93eb39b512e
Commit status:
[Not Reviewed]
References:
Comments:
0 Commit comments 0 Inline Comments
Unresolved TODOs:
There are no unresolved TODOs
Add another comment

r3:4a517b89268a - - 4 files changed: 19 inserted, 13 deleted

@@ -0,0 +1,13
1 + problem do
2 + num_tests <%= num_testcases %>
3 + full_score <%= num_testcases*10 %>
4 + time_limit_each <%= options[:time_limit] %>
5 + mem_limit_each <%= options[:mem_limit] %>
6 + score_each 10
7 +
8 + <% 1.upto(num_testcase) do |i| %>
9 + run <%= i %>
10 + tests <%= i %>
11 + end
12 + <% end %>
13 + end
@@ -98,12 +98,14
98 current_dir = `pwd`
98 current_dir = `pwd`
99
99
100 talk 'Grader queue'
100 talk 'Grader queue'
101 + while true
101 task = Task.find(:first, :order => 'created_at')
102 task = Task.find(:first, :order => 'created_at')
102 if task!=nil
103 if task!=nil
103 grade(task.submission_id)
104 grade(task.submission_id)
104 task.destroy
105 task.destroy
105 else
106 else
106 - puts "No job"
107 + sleep(1)
108 + end
107 end
109 end
108
110
109
111
@@ -70,19 +70,10
70 # generating all_tests.cfg
70 # generating all_tests.cfg
71 puts "generating testcase config file"
71 puts "generating testcase config file"
72
72
73 - template = %q{
73 + template = File.open("all_tests.cfg.erb").readlines
74 - problem do
75 - num_tests <%= num_testcases %>
76 - full_score <%= num_testcases*10 %>
77 - time_limit_each <%= options[:time_limit] %>
78 - mem_limit_each <%= options[:mem_limit] %>
79 - score_each 10
80 - end
81 - }
82 -
83 all_test_cfg = ERB.new(template)
74 all_test_cfg = ERB.new(template)
84
75
85 - cfg_file = File.open("#{problem}/test_cases/all_test.cfg","w")
76 + cfg_file = File.open("#{problem}/test_cases/all_tests.cfg","w")
86 cfg_file.puts all_test_cfg.result
77 cfg_file.puts all_test_cfg.result
87 cfg_file.close
78 cfg_file.close
88
79
@@ -71,7 +71,7
71 compile_message = `cat compiler_message`
71 compile_message = `cat compiler_message`
72 compile_message.strip!
72 compile_message.strip!
73 execute("mv compiler_message #{test_result_dir}", "Cannot move the compiler message to #{test_result_dir}.")
73 execute("mv compiler_message #{test_result_dir}", "Cannot move the compiler message to #{test_result_dir}.")
74 - if compile_message != ""
74 + if !FileTest.exist?("a.out")
75 puts "Cannot compile the source code. See message in #{test_result_dir}/compile_message"
75 puts "Cannot compile the source code. See message in #{test_result_dir}/compile_message"
76 exit(127)
76 exit(127)
77 else
77 else
You need to be logged in to leave comments. Login now