public void Add() { ComplexDoubleVector a = new ComplexDoubleVector(new double[4] { 0, 1, 2, 3 }); ComplexDoubleVector b = new ComplexDoubleVector(new double[4] { 4, 5, 6, 7 }); ComplexDoubleVector c = new ComplexDoubleVector(a.Length); ComplexDoubleVector d = new ComplexDoubleVector(b.Length); c = a + b; d = ComplexDoubleVector.Add(a, b); Assert.AreEqual(c[0], a[0] + b[0]); Assert.AreEqual(c[1], a[1] + b[1]); Assert.AreEqual(c[2], a[2] + b[2]); Assert.AreEqual(c[3], a[3] + b[3]); Assert.AreEqual(d[0], c[0]); Assert.AreEqual(d[1], c[1]); Assert.AreEqual(d[2], c[2]); Assert.AreEqual(d[3], c[3]); a.Add(b); Assert.AreEqual(c[0], a[0]); Assert.AreEqual(c[1], a[1]); Assert.AreEqual(c[2], a[2]); Assert.AreEqual(c[3], a[3]); }
public void IList() { ComplexDoubleVector a = new ComplexDoubleVector(new Complex[4] { 0, 1, 2, 3 }); Assert.AreEqual(a.IsFixedSize, false); Assert.AreEqual(a.IsReadOnly, false); a.Add((Complex)4.0); Assert.AreEqual(a.Length, 5); Assert.AreEqual(a[4], (Complex)4); Assert.AreEqual(a.Contains((Complex)4.0), true); a.Insert(1, (Complex)5.0); Assert.AreEqual(a.Length, 6); Assert.AreEqual(a.Contains((Complex)5.0), true); Assert.AreEqual(a[0], (Complex)0); Assert.AreEqual(a[1], (Complex)5); Assert.AreEqual(a[2], (Complex)1); Assert.AreEqual(a[3], (Complex)2); Assert.AreEqual(a[4], (Complex)3); Assert.AreEqual(a[5], (Complex)4); a.Remove((Complex)5.0); Assert.AreEqual(a.Length, 5); Assert.AreEqual(a.Contains((Complex)5.0), false); Assert.AreEqual(a[0], (Complex)0); Assert.AreEqual(a[1], (Complex)1); Assert.AreEqual(a[2], (Complex)2); Assert.AreEqual(a[3], (Complex)3); Assert.AreEqual(a[4], (Complex)4); a.RemoveAt(2); Assert.AreEqual(a.Length, 4); Assert.AreEqual(a.Contains((Complex)2.0), false); Assert.AreEqual(a[0], (Complex)0); Assert.AreEqual(a[1], (Complex)1); Assert.AreEqual(a[2], (Complex)3); Assert.AreEqual(a[3], (Complex)4); }