summaryrefslogtreecommitdiff
path: root/spec/ruby/library/matrix/vector/normalize_spec.rb
blob: 7345e11fa49ac75939cd2acb826c9108468a967b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
require_relative '../../../spec_helper'

ruby_version_is ""..."3.1" do
  require 'matrix'

  describe "Vector#normalize" do
    it "returns a normalized copy of the vector" do
      x = 0.2672612419124244
      Vector[1, 2, 3].normalize.should == Vector[x, x * 2, x * 3]
    end

    it "raises an error for zero vectors" do
      -> {
        Vector[].normalize
      }.should raise_error(Vector::ZeroVectorError)
      -> {
        Vector[0, 0, 0].normalize
      }.should raise_error(Vector::ZeroVectorError)
    end
  end
end