Vector.tests.ps1
describe Vector { it 'It a collection of points' { $vector = Vector 1..4 $vector.GetType() | Should -Be ([object[]]) $vector | Should -BeOfType ([int]) } it 'Can be a two dimensional vector' { Vector2 3,4 | Should -BeOfType ([Numerics.Vector2]) } it 'Can be a three dimensional vector' { Vector3 1,2,3 | Should -BeOfType ([Numerics.Vector3]) } it 'Can be a four dimensional vector' { Vector4 1,2,3,4 | Should -BeOfType ([Numerics.Vector4]) } context 'Vector Math' { it 'Can subtract vectors' { $subtract = (v2 1 2) - (v2 1 2) $subtract.X | Should -Be 0 $subtract.Y | Should -Be 0 } it 'Can add vectors' { $add = (v2 1 2) + (v2 1 2) $add.X | Should -Be 2 $add.Y | Should -Be 4 } it 'Can multiply vectors' { $multiply = (v2 1 2) * (v2 1 2) $multiply.X | Should -Be 1 $multiply.Y | Should -Be 4 } it 'Can divide vectors' { $divide = (v2 1 2) / (v2 1 2) $divide.X | Should -Be 1 $divide.Y | Should -Be 1 } } } |