public
Description: Rubinius, the Ruby VM
Homepage: http://rubini.us
Clone URL: git://github.com/evanphx/rubinius.git
febuiles (author)
Fri Apr 18 20:47:15 -0700 2008
commit  2b3a44158ae93ab5883da22e5f36df92485f3ad4
tree    3ffdeaf8443ba92615addec23a5a28832e015384
parent  3be265a93a75b6a0267b1770f8cad671c4244671
rubinius / spec / ruby / 1.8 / library / matrix / diagonal_spec.rb
100644 29 lines (24 sloc) 0.557 kb
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
27
28
29
require File.dirname(__FILE__) + '/../../spec_helper'
require 'matrix'
 
describe "Matrix.diagonal" do
  before(:each) do
    @m = Matrix.diagonal(10, 11, 12, 13, 14)
  end
  
  it "returns an object of type Matrix" do
    @m.class.should == Matrix
  end
  
  it "sets the diagonal to the arguments" do
    (0..4).each do |i|
      @m[i, i].should == i + 10
    end
  end
  
  it "fills all non-diagonal cells with 0" do
    (0..4).each do |i|
      (0..4).each do |j|
        if i != j
          @m[i, j].should == 0
        end
      end
    end
  end
end