Description:
added after_save_hook to ResultCollector
Commit status:
[Not Reviewed]
References:
Comments:
0 Commit comments 0 Inline Comments
Unresolved TODOs:
There are no unresolved TODOs
Add another comment

r122:ed471e6e96ca - - 1 file changed: 15 inserted, 2 deleted

@@ -114,7 +114,7
114 114 end
115 115
116 116 options[:report] = (ARGV.delete('--report') != nil)
117 - if options[:report] and (not ['prob','contest'].include? options[:mode])
117 + if options[:report] and (not ['prob','contest','autonew'].include? options[:mode])
118 118 puts "Report currently works only for 'prob' or 'contest' modes."
119 119 exit(0)
120 120 end
@@ -129,6 +129,9
129 129 @users = {}
130 130 end
131 131
132 + def after_save_hook(user, problem, grading_result)
133 + end
134 +
132 135 def save(user, problem, grading_result)
133 136 if not @problems.has_key? problem.id
134 137 @problems[problem.id] = problem
@@ -137,6 +140,8
137 140 @users[user.id] = user
138 141 end
139 142 @results[[user.id, problem.id]] = grading_result
143 +
144 + after_save_hook(user, problem, grading_result)
140 145 end
141 146
142 147 def print_report_by_user
@@ -202,11 +207,19
202 207 def grader_autonew_loop(grader_proc, options)
203 208 log "Grader: autonew"
204 209
210 + if options[:report]
211 + result_collector = ResultCollector.new
212 + else
213 + result_collector = nil
214 + end
215 +
205 216 if options[:dry_run]
206 217 puts "Running in dry mode"
207 218 end
208 219
209 - prob_reporter = Grader::SubmissionReporter.new(:dry_run => options[:dry_run])
220 + prob_reporter = Grader::SubmissionReporter.new(:dry_run => options[:dry_run],
221 + :result_collector => result_collector)
222 +
210 223 engine = Grader::Engine.new(:reporter => prob_reporter)
211 224 runner = Grader::Runner.new(engine, grader_proc)
212 225
You need to be logged in to leave comments. Login now