Hide linter in week 1 and 2 of Python course

This commit is contained in:
Sebastian Serth
2021-03-08 23:20:42 +01:00
parent 8ebe59b692
commit 39467ad0e0
2 changed files with 37 additions and 0 deletions

View File

@ -92,5 +92,13 @@ module SubmissionScoring
output.except!(:error_messages, :count, :failed, :filename, :message, :passed, :stderr, :stdout)
end
end
# Return all test results except for those of a linter if not allowed
show_linter = Python20CourseWeek.show_linter? submission.exercise
outputs&.reject do |output|
next if show_linter || output.blank?
output[:file_role] == 'teacher_defined_linter'
end
end
end

View File

@ -0,0 +1,29 @@
# frozen_string_literal: true
class Python20CourseWeek
def self.get_for(exercise)
case exercise.title
when /Python20 Aufgabe 1/
1
when /Python20 Aufgabe 2/
2
when /Python20 Aufgabe 3/
3
when /Python20 Aufgabe 4/
4
when /Python20 Snake/
4
else
# Not part of the Python20 course
nil
end
end
def self.show_linter?(exercise)
week = get_for(exercise)
return true if week.nil? # Exercise is not part of the experiment
[3, 4].include?(week)
end
end