Merge branch 'devel' of github.com:danmunn/redmine_dmsf into devel
This commit is contained in:
commit
2676eaba74
@ -42,6 +42,7 @@ class DmsfFile < ApplicationRecord
|
|||||||
scope :deleted, -> { where(deleted: STATUS_DELETED) }
|
scope :deleted, -> { where(deleted: STATUS_DELETED) }
|
||||||
|
|
||||||
validates :name, dmsf_file_name: true
|
validates :name, dmsf_file_name: true
|
||||||
|
validates :name, length: { maximum: 255 }
|
||||||
validates :name,
|
validates :name,
|
||||||
uniqueness: {
|
uniqueness: {
|
||||||
scope: %i[dmsf_folder_id project_id deleted],
|
scope: %i[dmsf_folder_id project_id deleted],
|
||||||
|
|||||||
@ -90,8 +90,11 @@ class DmsfFileRevision < ApplicationRecord
|
|||||||
)
|
)
|
||||||
|
|
||||||
validates :title, presence: true
|
validates :title, presence: true
|
||||||
|
validates :title, length: { maximum: 255 }
|
||||||
validates :major_version, presence: true
|
validates :major_version, presence: true
|
||||||
validates :name, dmsf_file_name: true
|
validates :name, dmsf_file_name: true
|
||||||
|
validates :name, length: { maximum: 255 }
|
||||||
|
validates :disk_filename, length: { maximum: 255 }
|
||||||
validates :description, length: { maximum: 1.kilobyte }
|
validates :description, length: { maximum: 1.kilobyte }
|
||||||
validates :size, dmsf_max_file_size: true
|
validates :size, dmsf_max_file_size: true
|
||||||
|
|
||||||
|
|||||||
@ -36,6 +36,31 @@ class DmsfFileRevisionTest < RedmineDmsf::Test::UnitTest
|
|||||||
@wf1 = DmsfWorkflow.find 1
|
@wf1 = DmsfWorkflow.find 1
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_file_title_length_validation
|
||||||
|
file = DmsfFileRevision.new(title: Array.new(256).map { 'a' }.join,
|
||||||
|
name: 'Test Revision',
|
||||||
|
major_version: 1)
|
||||||
|
assert file.invalid?
|
||||||
|
assert_equal ['Title is too long (maximum is 255 characters)'], file.errors.full_messages
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_file_name_length_validation
|
||||||
|
file = DmsfFileRevision.new(name: Array.new(256).map { 'a' }.join,
|
||||||
|
title: 'Test Revision',
|
||||||
|
major_version: 1)
|
||||||
|
assert file.invalid?
|
||||||
|
assert_equal ['Name is too long (maximum is 255 characters)'], file.errors.full_messages
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_file_disk_filename_length_validation
|
||||||
|
file = DmsfFileRevision.new(disk_filename: Array.new(256).map { 'a' }.join,
|
||||||
|
title: 'Test Revision',
|
||||||
|
name: 'Test Revision',
|
||||||
|
major_version: 1)
|
||||||
|
assert file.invalid?
|
||||||
|
assert_equal ['Disk filename is too long (maximum is 255 characters)'], file.errors.full_messages
|
||||||
|
end
|
||||||
|
|
||||||
def test_delete_restore
|
def test_delete_restore
|
||||||
@revision5.delete commit: false
|
@revision5.delete commit: false
|
||||||
assert @revision5.deleted?, "File revision #{@revision5.name} hasn't been deleted"
|
assert @revision5.deleted?, "File revision #{@revision5.name} hasn't been deleted"
|
||||||
|
|||||||
@ -32,6 +32,12 @@ class DmsfFileTest < RedmineDmsf::Test::UnitTest
|
|||||||
@wf2 = DmsfWorkflow.find 2
|
@wf2 = DmsfWorkflow.find 2
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_file_name_length_validation
|
||||||
|
file = DmsfFile.new(name: Array.new(256).map { 'a' }.join)
|
||||||
|
assert file.invalid?
|
||||||
|
assert_equal ['Name is too long (maximum is 255 characters)'], file.errors.full_messages
|
||||||
|
end
|
||||||
|
|
||||||
def test_project_file_count_differs_from_project_visibility_count
|
def test_project_file_count_differs_from_project_visibility_count
|
||||||
assert_not_same @project1.dmsf_files.all.size, @project1.dmsf_files.visible.all.size
|
assert_not_same @project1.dmsf_files.all.size, @project1.dmsf_files.visible.all.size
|
||||||
end
|
end
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user