Navigation Menu

Skip to content

Commit

Permalink
Fix Integer#round
Browse files Browse the repository at this point in the history
  • Loading branch information
kachick committed Jun 24, 2013
1 parent 1932525 commit 705811d
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 7 deletions.
12 changes: 6 additions & 6 deletions lib-topaz/integer.rb
Expand Up @@ -53,11 +53,11 @@ def odd?
!even?
end

def round(ndigits = nil)
if ndigits.nil?
def round(*ndigits)
if ndigits.empty?
return self
end
ndigits = Topaz.convert_type(ndigits, Fixnum, :to_int)
ndigits = Topaz.convert_type(ndigits[0], Fixnum, :to_int)
if ndigits == 0
return self
end
Expand All @@ -73,9 +73,9 @@ def round(ndigits = nil)
return 0
end
h = f / 2
r = num % f
n = num - r
if ((num < 0 && r <= h) || r < h)
r = bytes % f
n = bytes - r
if ((bytes < 0 && r <= h) || r < h)
n = f + 1
end
return n
Expand Down
1 change: 0 additions & 1 deletion spec/tags/core/integer/round_tags.txt
@@ -1,4 +1,3 @@
fails:Integer#round returns itself rounded if passed a negative value
fails:Integer#round raises a RangeError when passed Float::INFINITY
fails:Integer#round raises a RangeError when passed a beyond signed int
fails:Integer#round raises a TypeError when its argument cannot be converted to an Integer

0 comments on commit 705811d

Please sign in to comment.