diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2019-05-17 21:27:47 +0900 |
|---|---|---|
| committer | GitHub <[email protected]> | 2019-05-17 21:27:47 +0900 |
| commit | eecac4f18bbd06907d0bed1ec572f69be547e33f (patch) | |
| tree | 8943272b965872482116cbaded345c87dfd0545f /mrbgems/mruby-rational | |
| parent | 6558d51b50c3e77e2f2e05b6d4009699a6de4d34 (diff) | |
| parent | aa41a5c9af4d8ee61867d4f0bfdaeab4deb7cf0e (diff) | |
| download | mruby-eecac4f18bbd06907d0bed1ec572f69be547e33f.tar.gz mruby-eecac4f18bbd06907d0bed1ec572f69be547e33f.zip | |
Merge pull request #4442 from shuujii/drop-dependency-from-mruby-rational-to-mruby-numeric-ext
Drop dependency from `mruby-rational` to `mruby-numeric-ext`
Diffstat (limited to 'mrbgems/mruby-rational')
| -rw-r--r-- | mrbgems/mruby-rational/mrbgem.rake | 1 | ||||
| -rw-r--r-- | mrbgems/mruby-rational/mrblib/rational.rb | 2 | ||||
| -rw-r--r-- | mrbgems/mruby-rational/test/rational.rb | 7 |
3 files changed, 8 insertions, 2 deletions
diff --git a/mrbgems/mruby-rational/mrbgem.rake b/mrbgems/mruby-rational/mrbgem.rake index 496082709..15c3429f2 100644 --- a/mrbgems/mruby-rational/mrbgem.rake +++ b/mrbgems/mruby-rational/mrbgem.rake @@ -4,5 +4,4 @@ MRuby::Gem::Specification.new('mruby-rational') do |spec| spec.summary = 'Rational class' spec.add_dependency 'mruby-object-ext', core: 'mruby-object-ext' - spec.add_dependency 'mruby-numeric-ext', core: 'mruby-numeric-ext' end diff --git a/mrbgems/mruby-rational/mrblib/rational.rb b/mrbgems/mruby-rational/mrblib/rational.rb index 37dcfc2a0..37e9d8c0f 100644 --- a/mrbgems/mruby-rational/mrblib/rational.rb +++ b/mrbgems/mruby-rational/mrblib/rational.rb @@ -83,7 +83,7 @@ end def Rational(numerator = 0, denominator = 1) a = numerator b = denominator - a, b = b, a % b until b.zero? + a, b = b, a % b until b == 0 Rational._new(numerator.div(a), denominator.div(a)) end diff --git a/mrbgems/mruby-rational/test/rational.rb b/mrbgems/mruby-rational/test/rational.rb index 4d3d36ccc..a65926bfb 100644 --- a/mrbgems/mruby-rational/test/rational.rb +++ b/mrbgems/mruby-rational/test/rational.rb @@ -100,3 +100,10 @@ assert 'Float#==(Rational), Float#!=(Rational)' do assert_equal_rational(true, -2.0, Rational(4,-2)) assert_equal_rational(false, 3.3, Rational(13,4)) end + +assert 'Rational#negative?' do + assert_predicate(Rational(-2,3), :negative?) + assert_predicate(Rational(2,-3), :negative?) + assert_not_predicate(Rational(2,3), :negative?) + assert_not_predicate(Rational(0), :negative?) +end |
