summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--app/models/version.rb2
-rw-r--r--test/unit/version_test.rb7
2 files changed, 8 insertions, 1 deletions
diff --git a/app/models/version.rb b/app/models/version.rb
index a213359f6..ee1d3daf0 100644
--- a/app/models/version.rb
+++ b/app/models/version.rb
@@ -268,7 +268,7 @@ class Version < ActiveRecord::Base
end
def deletable?
- fixed_issues.empty? && !referenced_by_a_custom_field?
+ fixed_issues.empty? && !referenced_by_a_custom_field? && attachments.empty?
end
def default_project_version
diff --git a/test/unit/version_test.rb b/test/unit/version_test.rb
index 40014375a..0f24f8e60 100644
--- a/test/unit/version_test.rb
+++ b/test/unit/version_test.rb
@@ -277,6 +277,13 @@ class VersionTest < ActiveSupport::TestCase
assert_equal false, version.deletable?
end
+ def test_deletable_should_return_false_when_referenced_by_an_attachment
+ version = Version.generate!
+ Attachment.generate!(:container => version, :filename => 'test.txt')
+
+ assert_equal false, version.deletable?
+ end
+
def test_like_scope
version = Version.create!(:project => Project.find(1), :name => 'Version for like scope test')