git-svn-id: http://svn.redmine.org/redmine/trunk@15019 e93f8b46-1217-0410-a6f0-8f06a7374b81tags/3.3.0
@@ -40,7 +40,7 @@ class VersionsController < ApplicationController | |||
@versions += @project.rolled_up_versions.visible if @with_subprojects | |||
@versions = @versions.uniq.sort | |||
unless params[:completed] | |||
@completed_versions = @versions.select {|version| version.closed? || version.completed? } | |||
@completed_versions = @versions.select(&:completed?) | |||
@versions -= @completed_versions | |||
end | |||
@@ -102,9 +102,9 @@ class Version < ActiveRecord::Base | |||
status == 'open' | |||
end | |||
# Returns true if the version is completed: due date reached and no open issues | |||
# Returns true if the version is completed: closed or due date reached and no open issues | |||
def completed? | |||
effective_date && (effective_date < Date.today) && (open_issues_count == 0) | |||
closed? || (effective_date && (effective_date < Date.today) && (open_issues_count == 0)) | |||
end | |||
def behind_schedule? |
@@ -138,6 +138,11 @@ class VersionTest < ActiveSupport::TestCase | |||
assert_equal false, version.completed? | |||
end | |||
def test_completed_should_be_true_when_closed | |||
version = Version.create!(:project_id => 1, :status => 'closed', :name => 'Closed') | |||
assert_equal true, version.completed? | |||
end | |||
test "#behind_schedule? should be false if there are no issues assigned" do | |||
version = Version.generate!(:effective_date => Date.yesterday) | |||
assert_equal false, version.behind_schedule? |