summaryrefslogtreecommitdiff
path: root/spec/ruby/shared/complex/numerator.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/ruby/shared/complex/numerator.rb')
-rw-r--r--spec/ruby/shared/complex/numerator.rb19
1 files changed, 19 insertions, 0 deletions
diff --git a/spec/ruby/shared/complex/numerator.rb b/spec/ruby/shared/complex/numerator.rb
new file mode 100644
index 0000000000..b8384e4a93
--- /dev/null
+++ b/spec/ruby/shared/complex/numerator.rb
@@ -0,0 +1,19 @@
+require File.expand_path('../../../spec_helper', __FILE__)
+
+describe :complex_numerator, shared: true do
+ it "returns self's numerator" do
+ Complex(2).numerator.should == Complex(2)
+ Complex(3, 4).numerator.should == Complex(3, 4)
+
+ Complex(Rational(3, 4), Rational(3, 4)).numerator.should == Complex(3, 3)
+ Complex(Rational(7, 4), Rational(8, 4)).numerator.should == Complex(7, 8)
+
+ Complex(Rational(7, 8), Rational(8, 4)).numerator.should == Complex(7, 16)
+ Complex(Rational(7, 4), Rational(8, 8)).numerator.should == Complex(7, 4)
+
+ # NOTE:
+ # Bug? - Fails with a MethodMissingError
+ # (undefined method `denominator' for 3.5:Float)
+ # Complex(3.5, 3.7).numerator
+ end
+end