public void adding_null_vector_throws() { var left = new VectorF(3); VectorF right = null; Assert.Throws <ArgumentNullException>(() => left.GetSum(right)); }
public void adding_vectors_of_different_size_throws() { var left = new VectorF(3); var right = new VectorF(4); Assert.NotEqual(left.Dimensions, right.Dimensions); Assert.Throws <ArgumentOutOfRangeException>(() => left.GetSum(right)); }
public void adding_vectors_does_not_mutate_operands() { var left = new VectorF(3); left.Set(0, 1); left.Set(1, 3); left.Set(2, -4); var expectedLeft = new VectorF(left); var right = new VectorF(3); right.Set(0, -10); right.Set(1, 4); right.Set(2, -20); var expectedRight = new VectorF(right); left.GetSum(right); Assert.Equal(expectedRight, right); Assert.Equal(expectedLeft, left); }
public void can_add_vectors_of_same_size() { var left = new VectorF(3); left.Set(0, 1); left.Set(1, 3); left.Set(2, -4); var right = new VectorF(3); right.Set(0, -10); right.Set(1, 4); right.Set(2, -20); var expected = new VectorF(3); expected.Set(0, -9); expected.Set(1, 7); expected.Set(2, -24); var actual = left.GetSum(right); Assert.Equal(expected, actual); }