From ff7f33cfd84e5aa4cfae3e49479ed63810fe1ef9 Mon Sep 17 00:00:00 2001 From: Hauke Klement Date: Wed, 11 Mar 2015 15:15:10 +0100 Subject: [PATCH] minor changes --- app/models/code_ocean/file.rb | 4 ++++ app/models/exercise.rb | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/app/models/code_ocean/file.rb b/app/models/code_ocean/file.rb index 9cc85832..ccfa7f46 100644 --- a/app/models/code_ocean/file.rb +++ b/app/models/code_ocean/file.rb @@ -24,6 +24,10 @@ module CodeOcean scope :editable, -> { where(read_only: false) } scope :visible, -> { where(hidden: false) } + ROLES.each do |role| + scope :"#{role}s", -> { where(role: role) } + end + validates :feedback_message, if: :teacher_defined_test?, presence: true validates :feedback_message, absence: true, unless: :teacher_defined_test? validates :file_type_id, presence: true diff --git a/app/models/exercise.rb b/app/models/exercise.rb index 5fb887e0..28f9781f 100644 --- a/app/models/exercise.rb +++ b/app/models/exercise.rb @@ -43,7 +43,7 @@ class Exercise < ActiveRecord::Base private :generate_token def maximum_score - files.where(role: 'teacher_defined_test').sum(:weight) + files.teacher_defined_tests.sum(:weight) end def set_default_values @@ -56,7 +56,7 @@ class Exercise < ActiveRecord::Base end def valid_main_file? - if files.where(role: 'main_file').count > 1 + if files.main_files.count > 1 errors.add(:files, I18n.t('activerecord.errors.models.exercise.at_most_one_main_file')) end end