diff options
Diffstat (limited to 'spec/rubyspec/library/matrix/shared/identity.rb')
-rw-r--r-- | spec/rubyspec/library/matrix/shared/identity.rb | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/spec/rubyspec/library/matrix/shared/identity.rb b/spec/rubyspec/library/matrix/shared/identity.rb new file mode 100644 index 0000000000..20b35ae8e3 --- /dev/null +++ b/spec/rubyspec/library/matrix/shared/identity.rb @@ -0,0 +1,19 @@ +require File.expand_path('../../fixtures/classes', __FILE__) +require 'matrix' + +describe :matrix_identity, shared: true do + it "returns a Matrix" do + Matrix.send(@method, 2).should be_kind_of(Matrix) + end + + it "returns a n x n identity matrix" do + Matrix.send(@method, 3).should == Matrix.scalar(3, 1) + Matrix.send(@method, 100).should == Matrix.scalar(100, 1) + end + + describe "for a subclass of Matrix" do + it "returns an instance of that subclass" do + MatrixSub.send(@method, 2).should be_an_instance_of(MatrixSub) + end + end +end |