summaryrefslogtreecommitdiff
path: root/spec/ruby/library/bigdecimal/add_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/ruby/library/bigdecimal/add_spec.rb')
-rw-r--r--spec/ruby/library/bigdecimal/add_spec.rb14
1 files changed, 10 insertions, 4 deletions
diff --git a/spec/ruby/library/bigdecimal/add_spec.rb b/spec/ruby/library/bigdecimal/add_spec.rb
index 1ae5b7f428..5b874687fe 100644
--- a/spec/ruby/library/bigdecimal/add_spec.rb
+++ b/spec/ruby/library/bigdecimal/add_spec.rb
@@ -81,6 +81,12 @@ describe "BigDecimal#add" do
end
end
+ describe "with Rational" do
+ it "produces a BigDecimal" do
+ (@three + Rational(500, 2)).should == BigDecimal("0.253e3")
+ end
+ end
+
it "favors the precision specified in the second argument over the global limit" do
BigDecimalSpecs.with_limit(1) do
BigDecimal('0.888').add(@zero, 3).should == BigDecimal('0.888')
@@ -165,22 +171,22 @@ describe "BigDecimal#add" do
end
it "raises TypeError when adds nil" do
- lambda {
+ -> {
@one.add(nil, 10)
}.should raise_error(TypeError)
- lambda {
+ -> {
@one.add(nil, 0)
}.should raise_error(TypeError)
end
it "raises TypeError when precision parameter is nil" do
- lambda {
+ -> {
@one.add(@one, nil)
}.should raise_error(TypeError)
end
it "raises ArgumentError when precision parameter is negative" do
- lambda {
+ -> {
@one.add(@one, -10)
}.should raise_error(ArgumentError)
end