File: modulo_spec.rb

package info (click to toggle)
dlr-languages 20090805%2Bgit.e6b28d27%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 51,484 kB
  • ctags: 59,257
  • sloc: cs: 298,829; ruby: 159,643; xml: 19,872; python: 2,820; yacc: 1,960; makefile: 96; sh: 65
file content (26 lines) | stat: -rw-r--r-- 864 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
require File.dirname(__FILE__) + '/../../spec_helper'
require 'complex'

describe "Complex#% with Complex" do
  it "returns the remainder from complex division" do
    (Complex(13, 44) % Complex(5, 20)).should == Complex(13 % 5, 44 % 20)
    (Complex(13.5, 44.5) % Complex(5.5, 20.5)).should == Complex(13.5 % 5.5, 44.5 % 20.5)
  end
end

describe "Complex#% with Integer" do
  it "returns the remainder from dividing both parts of self by the given Integer" do
    (Complex(21, 42) % 10).should == Complex(21 % 10, 42 % 10)
    (Complex(15.5, 16.5) % 2.0).should be_close(Complex(15.5 % 2, 16.5 % 2), TOLERANCE)
  end
end

describe "Complex#% with Object" do
  it "tries to coerce self into other" do
    value = Complex(3, 9)
    
    obj = mock("Object")
    obj.should_receive(:coerce).with(value).and_return([2, 5])
    (value % obj).should == 2 % 5
  end
end