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