##// END OF EJS Templates
Merged r4186 from trunk....
Eric Davis -
r4090:dd91dc4cb785
parent child
Show More
@@ -245,7 +245,7 class Issue < ActiveRecord::Base
245 end
245 end
246
246
247 def done_ratio
247 def done_ratio
248 if Issue.use_status_for_done_ratio? && status && status.default_done_ratio?
248 if Issue.use_status_for_done_ratio? && status && status.default_done_ratio
249 status.default_done_ratio
249 status.default_done_ratio
250 else
250 else
251 read_attribute(:done_ratio)
251 read_attribute(:done_ratio)
@@ -308,7 +308,7 class Issue < ActiveRecord::Base
308 # Set the done_ratio using the status if that setting is set. This will keep the done_ratios
308 # Set the done_ratio using the status if that setting is set. This will keep the done_ratios
309 # even if the user turns off the setting later
309 # even if the user turns off the setting later
310 def update_done_ratio_from_issue_status
310 def update_done_ratio_from_issue_status
311 if Issue.use_status_for_done_ratio? && status && status.default_done_ratio?
311 if Issue.use_status_for_done_ratio? && status && status.default_done_ratio
312 self.done_ratio = status.default_done_ratio
312 self.done_ratio = status.default_done_ratio
313 end
313 end
314 end
314 end
@@ -689,7 +689,7 class Issue < ActiveRecord::Base
689 end
689 end
690
690
691 # done ratio = weighted average ratio of leaves
691 # done ratio = weighted average ratio of leaves
692 unless Issue.use_status_for_done_ratio? && p.status && p.status.default_done_ratio?
692 unless Issue.use_status_for_done_ratio? && p.status && p.status.default_done_ratio
693 leaves_count = p.leaves.count
693 leaves_count = p.leaves.count
694 if leaves_count > 0
694 if leaves_count > 0
695 average = p.leaves.average(:estimated_hours).to_f
695 average = p.leaves.average(:estimated_hours).to_f
@@ -38,6 +38,7 issues_002:
38 lft: 1
38 lft: 1
39 rgt: 2
39 rgt: 2
40 lock_version: 3
40 lock_version: 3
41 done_ratio: 30
41 issues_003:
42 issues_003:
42 created_on: 2006-07-19 21:07:27 +02:00
43 created_on: 2006-07-19 21:07:27 +02:00
43 project_id: 1
44 project_id: 1
@@ -571,6 +571,9 class IssueTest < ActiveSupport::TestCase
571 @issue = Issue.find(1)
571 @issue = Issue.find(1)
572 @issue_status = IssueStatus.find(1)
572 @issue_status = IssueStatus.find(1)
573 @issue_status.update_attribute(:default_done_ratio, 50)
573 @issue_status.update_attribute(:default_done_ratio, 50)
574 @issue2 = Issue.find(2)
575 @issue_status2 = IssueStatus.find(2)
576 @issue_status2.update_attribute(:default_done_ratio, 0)
574 end
577 end
575
578
576 context "with Setting.issue_done_ratio using the issue_field" do
579 context "with Setting.issue_done_ratio using the issue_field" do
@@ -580,6 +583,7 class IssueTest < ActiveSupport::TestCase
580
583
581 should "read the issue's field" do
584 should "read the issue's field" do
582 assert_equal 0, @issue.done_ratio
585 assert_equal 0, @issue.done_ratio
586 assert_equal 30, @issue2.done_ratio
583 end
587 end
584 end
588 end
585
589
@@ -590,6 +594,7 class IssueTest < ActiveSupport::TestCase
590
594
591 should "read the Issue Status's default done ratio" do
595 should "read the Issue Status's default done ratio" do
592 assert_equal 50, @issue.done_ratio
596 assert_equal 50, @issue.done_ratio
597 assert_equal 0, @issue2.done_ratio
593 end
598 end
594 end
599 end
595 end
600 end
@@ -599,6 +604,9 class IssueTest < ActiveSupport::TestCase
599 @issue = Issue.find(1)
604 @issue = Issue.find(1)
600 @issue_status = IssueStatus.find(1)
605 @issue_status = IssueStatus.find(1)
601 @issue_status.update_attribute(:default_done_ratio, 50)
606 @issue_status.update_attribute(:default_done_ratio, 50)
607 @issue2 = Issue.find(2)
608 @issue_status2 = IssueStatus.find(2)
609 @issue_status2.update_attribute(:default_done_ratio, 0)
602 end
610 end
603
611
604 context "with Setting.issue_done_ratio using the issue_field" do
612 context "with Setting.issue_done_ratio using the issue_field" do
@@ -608,8 +616,10 class IssueTest < ActiveSupport::TestCase
608
616
609 should "not change the issue" do
617 should "not change the issue" do
610 @issue.update_done_ratio_from_issue_status
618 @issue.update_done_ratio_from_issue_status
619 @issue2.update_done_ratio_from_issue_status
611
620
612 assert_equal 0, @issue.done_ratio
621 assert_equal 0, @issue.read_attribute(:done_ratio)
622 assert_equal 30, @issue2.read_attribute(:done_ratio)
613 end
623 end
614 end
624 end
615
625
@@ -618,10 +628,12 class IssueTest < ActiveSupport::TestCase
618 Setting.issue_done_ratio = 'issue_status'
628 Setting.issue_done_ratio = 'issue_status'
619 end
629 end
620
630
621 should "not change the issue's done ratio" do
631 should "change the issue's done ratio" do
622 @issue.update_done_ratio_from_issue_status
632 @issue.update_done_ratio_from_issue_status
633 @issue2.update_done_ratio_from_issue_status
623
634
624 assert_equal 50, @issue.done_ratio
635 assert_equal 50, @issue.read_attribute(:done_ratio)
636 assert_equal 0, @issue2.read_attribute(:done_ratio)
625 end
637 end
626 end
638 end
627 end
639 end
General Comments 0
You need to be logged in to leave comments. Login now