From 22d59b4e672fbbff135dc98f0dcffbb4bf60559e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karel=20Pi=C4=8Dman?= Date: Fri, 14 Sep 2018 11:01:15 +0200 Subject: [PATCH] validation_presence_of instead of validate :presence => true --- app/models/dmsf_file.rb | 3 +-- app/models/dmsf_file_revision.rb | 5 +---- app/models/dmsf_file_revision_access.rb | 2 +- app/models/dmsf_folder.rb | 3 +-- app/models/dmsf_folder_permission.rb | 2 +- app/models/dmsf_link.rb | 3 +-- app/models/dmsf_workflow.rb | 2 +- app/models/dmsf_workflow_step.rb | 5 +---- app/models/dmsf_workflow_step_action.rb | 6 ++---- app/models/dmsf_workflow_step_assignment.rb | 2 +- test/unit/dmsf_file_revision_test.rb | 15 ++++++++++++++- 11 files changed, 25 insertions(+), 23 deletions(-) diff --git a/app/models/dmsf_file.rb b/app/models/dmsf_file.rb index 8a3266dd..8f4b9f3c 100644 --- a/app/models/dmsf_file.rb +++ b/app/models/dmsf_file.rb @@ -51,10 +51,9 @@ class DmsfFile < ActiveRecord::Base scope :visible, -> { where(:deleted => STATUS_ACTIVE) } scope :deleted, -> { where(:deleted => STATUS_DELETED) } - validates :name, :presence => true + validates_presence_of :name, :project validates_format_of :name, :with => /\A[^#{DmsfFolder::INVALID_CHARACTERS}]*\z/, :message => l(:error_contains_invalid_character) - validates :project, :presence => true validate :validates_name_uniqueness def validates_name_uniqueness diff --git a/app/models/dmsf_file_revision.rb b/app/models/dmsf_file_revision.rb index cdc6f377..aad5c06c 100644 --- a/app/models/dmsf_file_revision.rb +++ b/app/models/dmsf_file_revision.rb @@ -65,13 +65,10 @@ class DmsfFileRevision < ActiveRecord::Base :scope => DmsfFileRevision.joins(:dmsf_file). joins("JOIN #{Project.table_name} ON #{Project.table_name}.id = #{DmsfFile.table_name}.project_id").visible - validates :title, :presence => true - validates :major_version, :presence => true - validates :minor_version, :presence => true + validates_presence_of :title, :major_version, :minor_version, :dmsf_file validates_format_of :name, :with => /\A[^#{DmsfFolder::INVALID_CHARACTERS}]*\z/, :message => l(:error_contains_invalid_character) validates :description, length: { maximum: 1.kilobyte } - validates :dmsf_file, :presence => true def project self.dmsf_file.project if self.dmsf_file diff --git a/app/models/dmsf_file_revision_access.rb b/app/models/dmsf_file_revision_access.rb index 48cada2d..928a1a26 100644 --- a/app/models/dmsf_file_revision_access.rb +++ b/app/models/dmsf_file_revision_access.rb @@ -26,7 +26,7 @@ class DmsfFileRevisionAccess < ActiveRecord::Base delegate :dmsf_file, :to => :dmsf_file_revision, :allow_nil => false delegate :project, :to => :dmsf_file, :allow_nil => false - validates :dmsf_file_revision, :presence => true + validates_presence_of :dmsf_file_revision DownloadAction = 0 EmailAction = 1 diff --git a/app/models/dmsf_folder.rb b/app/models/dmsf_folder.rb index 30625e73..a45924b7 100644 --- a/app/models/dmsf_folder.rb +++ b/app/models/dmsf_folder.rb @@ -90,14 +90,13 @@ class DmsfFolder < ActiveRecord::Base :datetime => Proc.new {|o| o.updated_at }, :author => Proc.new {|o| o.user } - validates :title, :presence => true + validates_presence_of :title, :project validates_uniqueness_of :title, :scope => [:dmsf_folder_id, :project_id, :deleted], conditions: -> { where(:deleted => STATUS_ACTIVE) } validates_format_of :title, :with => /\A[^#{INVALID_CHARACTERS}]*\z/, :message => l(:error_contains_invalid_character) validate :check_cycle validates_length_of :description, :maximum => 65535 - validates :project, :presence => true before_create :default_values diff --git a/app/models/dmsf_folder_permission.rb b/app/models/dmsf_folder_permission.rb index e4e0cc69..cfda5cf0 100644 --- a/app/models/dmsf_folder_permission.rb +++ b/app/models/dmsf_folder_permission.rb @@ -22,7 +22,7 @@ class DmsfFolderPermission < ActiveRecord::Base belongs_to :dmsf_folder - validates :dmsf_folder, :presence => true + validates_presence_of :dmsf_folder scope :users, -> { where(:object_type => User.model_name.to_s) } scope :roles, -> { where(:object_type => Role.model_name.to_s) } diff --git a/app/models/dmsf_link.rb b/app/models/dmsf_link.rb index c305348a..a23f80ba 100644 --- a/app/models/dmsf_link.rb +++ b/app/models/dmsf_link.rb @@ -27,11 +27,10 @@ class DmsfLink < ActiveRecord::Base belongs_to :deleted_by_user, :class_name => 'User', :foreign_key => 'deleted_by_user_id' belongs_to :user - validates :name, :presence => true + validates_presence_of :name, :project validates_length_of :name, :maximum => 255 validates_length_of :external_url, :maximum => 255 validate :validate_url - validates :project, :presence => true def validate_url if self.target_type == 'DmsfUrl' diff --git a/app/models/dmsf_workflow.rb b/app/models/dmsf_workflow.rb index e11d6750..b8406063 100644 --- a/app/models/dmsf_workflow.rb +++ b/app/models/dmsf_workflow.rb @@ -28,7 +28,7 @@ class DmsfWorkflow < ActiveRecord::Base scope :status, lambda { |arg| where(arg.blank? ? nil : {:status => arg.to_i}) } validate :name_validation - validates :name, :presence => true + validates_presence_of :name validates_length_of :name, :maximum => 255 def name_validation diff --git a/app/models/dmsf_workflow_step.rb b/app/models/dmsf_workflow_step.rb index 92087a4c..a96d94ac 100644 --- a/app/models/dmsf_workflow_step.rb +++ b/app/models/dmsf_workflow_step.rb @@ -24,10 +24,7 @@ class DmsfWorkflowStep < ActiveRecord::Base has_many :dmsf_workflow_step_assignments, :dependent => :destroy - validates :dmsf_workflow, :presence => true - validates :step, :presence => true - validates :user, :presence => true - validates :operator, :presence => true + validates_presence_of :dmsf_workflow, :step, :user, :operator validates_uniqueness_of :user_id, :scope => [:dmsf_workflow_id, :step] validates_length_of :name, :maximum => 30 diff --git a/app/models/dmsf_workflow_step_action.rb b/app/models/dmsf_workflow_step_action.rb index 689f2fc7..6bc7f332 100644 --- a/app/models/dmsf_workflow_step_action.rb +++ b/app/models/dmsf_workflow_step_action.rb @@ -23,10 +23,8 @@ class DmsfWorkflowStepAction < ActiveRecord::Base belongs_to :dmsf_workflow_step_assignment belongs_to :author, :class_name => 'User', :foreign_key => 'author_id' - validates :dmsf_workflow_step_assignment, :presence => true - validates :action, :presence => true - validates :note, :presence => true, :unless => lambda { self.action == DmsfWorkflowStepAction::ACTION_APPROVE } - validates :author_id, :presence => true + validates_presence_of :dmsf_workflow_step_assignment, :action, :author_id + validates_presence_of :note, :unless => lambda { self.action == DmsfWorkflowStepAction::ACTION_APPROVE } validates_uniqueness_of :dmsf_workflow_step_assignment_id, :scope => [:action], :unless => lambda {self.action == DmsfWorkflowStepAction::ACTION_DELEGATE} diff --git a/app/models/dmsf_workflow_step_assignment.rb b/app/models/dmsf_workflow_step_assignment.rb index 95e67437..b5500470 100644 --- a/app/models/dmsf_workflow_step_assignment.rb +++ b/app/models/dmsf_workflow_step_assignment.rb @@ -25,7 +25,7 @@ class DmsfWorkflowStepAssignment < ActiveRecord::Base has_many :dmsf_workflow_step_actions, :dependent => :destroy - validates :dmsf_workflow_step, :dmsf_file_revision, :presence => true + validates_presence_of :dmsf_workflow_step, :dmsf_file_revision validates_uniqueness_of :dmsf_workflow_step_id, :scope => [:dmsf_file_revision_id] def add?(dmsf_file_revision_id) diff --git a/test/unit/dmsf_file_revision_test.rb b/test/unit/dmsf_file_revision_test.rb index 820e53e1..5b2546a1 100644 --- a/test/unit/dmsf_file_revision_test.rb +++ b/test/unit/dmsf_file_revision_test.rb @@ -240,7 +240,20 @@ class DmsfFileRevisionTest < RedmineDmsf::Test::UnitTest User.current = @jsmith assert !@revision1.obsolete assert_equal 1, @revision1.errors.count - @revision1.errors.full_messages.to_sentence.include?(l(:error_file_is_locked)) + assert @revision1.errors.full_messages.to_sentence.include?(l(:error_file_is_locked)) + end + + def test_minor_version_cannot_be_nil + @revision1.minor_version = nil + assert !@revision1.save + assert @revision1.errors.full_messages.to_sentence.include?('Minor version cannot be blank') + end + + def test_major_version_cannot_be_nil + @revision1.major_version = nil + assert !@revision1.save + puts @revision1.errors.full_messages.to_sentence + assert @revision1.errors.full_messages.to_sentence.include?('Major version cannot be blank') end end \ No newline at end of file