@@ -40,7 +40,7 class VersionsController < ApplicationController | |||
|
40 | 40 | @versions += @project.rolled_up_versions.visible if @with_subprojects |
|
41 | 41 | @versions = @versions.uniq.sort |
|
42 | 42 | unless params[:completed] |
|
43 |
@completed_versions = @versions.select |
|
|
43 | @completed_versions = @versions.select(&:completed?) | |
|
44 | 44 | @versions -= @completed_versions |
|
45 | 45 | end |
|
46 | 46 |
@@ -102,9 +102,9 class Version < ActiveRecord::Base | |||
|
102 | 102 | status == 'open' |
|
103 | 103 | end |
|
104 | 104 | |
|
105 | # Returns true if the version is completed: due date reached and no open issues | |
|
105 | # Returns true if the version is completed: closed or due date reached and no open issues | |
|
106 | 106 | def completed? |
|
107 | effective_date && (effective_date < Date.today) && (open_issues_count == 0) | |
|
107 | closed? || (effective_date && (effective_date < Date.today) && (open_issues_count == 0)) | |
|
108 | 108 | end |
|
109 | 109 | |
|
110 | 110 | def behind_schedule? |
@@ -138,6 +138,11 class VersionTest < ActiveSupport::TestCase | |||
|
138 | 138 | assert_equal false, version.completed? |
|
139 | 139 | end |
|
140 | 140 | |
|
141 | def test_completed_should_be_true_when_closed | |
|
142 | version = Version.create!(:project_id => 1, :status => 'closed', :name => 'Closed') | |
|
143 | assert_equal true, version.completed? | |
|
144 | end | |
|
145 | ||
|
141 | 146 | test "#behind_schedule? should be false if there are no issues assigned" do |
|
142 | 147 | version = Version.generate!(:effective_date => Date.yesterday) |
|
143 | 148 | assert_equal false, version.behind_schedule? |
General Comments 0
You need to be logged in to leave comments.
Login now