@@ -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 " |
|
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