Change percent_complete rescue value from 100 to 0
The percent_complete method returns a value of 100 when a ZeroDivisionError occurs. That seems like a very strange default for an error case, and results in a bug when a milestone has no corresponding issues (new, empty milestones show 100% completion). This commit changes the rescue value to 0, and subsequently fixes #1656, which reported this problem.
This commit is contained in:
parent
b5ea355078
commit
8b92946b54
|
@ -11,6 +11,7 @@ v 7.12.0 (unreleased)
|
||||||
- Update Asciidoctor gem to version 1.5.2. (Jakub Jirutka)
|
- Update Asciidoctor gem to version 1.5.2. (Jakub Jirutka)
|
||||||
- Fix resolving of relative links to repository files in AsciiDoc documents. (Jakub Jirutka)
|
- Fix resolving of relative links to repository files in AsciiDoc documents. (Jakub Jirutka)
|
||||||
- Use the user list from the target project in a merge request (Stan Hu)
|
- Use the user list from the target project in a merge request (Stan Hu)
|
||||||
|
- Fix new/empty milestones showing 100% completion value (Jonah Bishop)
|
||||||
|
|
||||||
v 7.11.2
|
v 7.11.2
|
||||||
- no changes
|
- no changes
|
||||||
|
|
|
@ -44,7 +44,7 @@ class GroupMilestone
|
||||||
def percent_complete
|
def percent_complete
|
||||||
((closed_items_count * 100) / total_items_count).abs
|
((closed_items_count * 100) / total_items_count).abs
|
||||||
rescue ZeroDivisionError
|
rescue ZeroDivisionError
|
||||||
100
|
0
|
||||||
end
|
end
|
||||||
|
|
||||||
def state
|
def state
|
||||||
|
|
|
@ -66,7 +66,7 @@ class Milestone < ActiveRecord::Base
|
||||||
def percent_complete
|
def percent_complete
|
||||||
((closed_items_count * 100) / total_items_count).abs
|
((closed_items_count * 100) / total_items_count).abs
|
||||||
rescue ZeroDivisionError
|
rescue ZeroDivisionError
|
||||||
100
|
0
|
||||||
end
|
end
|
||||||
|
|
||||||
def expires_at
|
def expires_at
|
||||||
|
|
|
@ -47,7 +47,7 @@ describe Milestone do
|
||||||
|
|
||||||
it "should recover from dividing by zero" do
|
it "should recover from dividing by zero" do
|
||||||
expect(milestone.issues).to receive(:count).and_return(0)
|
expect(milestone.issues).to receive(:count).and_return(0)
|
||||||
expect(milestone.percent_complete).to eq(100)
|
expect(milestone.percent_complete).to eq(0)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue